regularPost.js

概要

定期ポストを行います。自分がいる時にのみ定期ポストが投稿できます。詳細には、自分がポストした時に、自動で定期ポストが投稿されます。
フッター形式と、通常ポスト形式を切り替えられます。フッターには、Azurea組み込みのフッターの仕組みを使っています。定期フッターと、常時フッターを両立できます。
設定するには、OPTION変数を書き換えてください。

必要条件

Azurea 1.4.4にて確認

スクリプト

/**
 * @fileOverview Regular post AzureaScript.
 * @author ne_Sachirou
 * @version 20120813
 * @license Public Domain
 */

var OPTION = {
  /** @type boolean */
  isEnabled: true,

  /** @type boolean */
  isFooter: false,

  /** @type number */
  duration: 1000 * 60 * 60,

  /** @type Array.<string> */
  texts: ['']
};
var lastTimeToPost = 0;

/**
 * @param {Array.<Object>} arr
 * @return {Object}
 */
function Array_random (arr) {
  return arr[Math.floor(Math.random() * arr.length)];
}

/**
 * @param {String=} statusText
 */
function postStatus (statusText) {
  lastTimeToPost = new Date().getTime();
  TwitterService.status.update((statusText || '') + Array_random(OPTION.texts), 0);
}

/**
 * @return {Boolean}
 */
function isTimeToPost () {
  if (!OPTION.isEnabled) { return false; }
  if (lastTimeToPost + OPTION.duration < new Date().getTime()) { return true; }
  return false;
}

TwitterService.addEventListener('preSendUpdateStatus', function (status) {
  if (!isTimeToPost()) { return false; }
  if (OPTION.isFooter) {
    if (status.in_reply_to_status_id) { return false; }
    postStatus(status.text);
    return true;
  } else {
    System.setTimeout(function () { postStatus(); }, 1000);
  }
});
 

コメントとか


もし見えてたら空欄にしてね!:

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-08-27 (土) 10:33:38 (1443d)