跳轉至內容

MIRC 指令碼/進階/計時器

來自華夏公益教科書,開放的書籍,開放的世界

第 4 章:計時器 75% 已完成  於 2008 年 3 月 31 日 14:23 (UTC)




計時器本質上是延遲,它會在指定時間後觸發一個命令。您可以將它們用於各種用途,從設定每分鐘執行一次的命令到設定 1 秒延遲以等待另一個操作先完成。

語法為 /timer[N/name] [-cdeomhipr] [time] <repetitions> <interval> <command> 這看起來可能很混亂,但我們會一步一步地進行解釋。


首先,可選的 [N/name] 部分。您可以使用此部分標識您的計時器(例如,以便以後將其關閉),或者將其留空,在這種情況下,mIRC 會自動為其分配最低的未使用的 N。

示例
/timerBAN ......
/timer1 .......
/timer ....


現在,可選的 [-cdeomhipr] 部分。這些是選項,我們將逐個進行解釋。

-c:這將使 mIRC 嘗試“追趕”計時器,如果需要,它會每隔一段時間執行一次以上。例如,如果您的 mIRC 出現延遲,並且跳過了一次執行,它將執行兩次而不是隻跳過一次。
-d:這確保了此計時器和之後啟動的計時器將按照它們啟動的順序執行。
-e:這會執行與指定計時器名稱關聯的命令,如果您指定萬用字元名稱,它也會生效。
-o:這將建立一個離線計時器,無論您是否連線到伺服器,它都會執行。預設情況下,計時器線上,除非您在未連線到伺服器的情況下啟動它們,在這種情況下,它們預設情況下是離線的。
-m -h:這將建立一個以毫秒為單位的間隔延遲,而不是預設的秒 -h 指定一個高解析度多媒體計時器,它將大量使用系統資源,因此應僅在時間關鍵的情況下使用。
-i:這將使計時器動態地與任何碰巧是活動連線的連線關聯起來。如果關閉了伺服器視窗,則計時器將與下一個可用的伺服器視窗關聯。
-p -r:這將暫停/恢復計時器。


現在,可選的 [time] 部分。這將指定計時器應啟動的時間,例如,“/timer 15:00 ....”將在下午 3 點啟動。


現在我們開始進入計時器的主要部分,首先是 <repetitions>。這將設定計時器必須執行多少次才能結束,例如,“/timer 5 ....”執行 5 次,之後將被刪除。如果您指定 0,它將重複自身,直到您停止它。


計時器的主要部分是 <interval>。這指定了計時器應延遲多少時間,以秒為單位(除非您使用 -h 或 -m 開關)。
例如
timer 1 10 .... 將在 10 秒後執行。
/timer 5 10 .... 將在 10 秒後執行,並重復 5 次(它將在啟動後的 10、20、30、40 和 50 秒執行)


現在是最後的部分,<command>。這是每次計時器執行時要執行的命令,即您希望它執行的功能。請注意,任何識別符號僅在啟動計時器時才會進行評估,因此,如果它返回的值發生變化,計時器將不會發生變化。要強制每次計時器執行時評估識別符號,請使用 $!
示例
/timer 5 600 /echo -a $me 將每次返回相同的暱稱,無論您當前的暱稱是什麼。
/timer 5 600 /echo -a $!me 將返回您當前的暱稱。


示例
/ban $nick
/timer 1 10 /unban $nick
這將禁止某人,然後在 10 秒後解除對他的/她的禁令。

/timer 0 600 /msg $chan 這是 $chan 的自動公告 - 請享受您在 $chan 的停留
這將啟動一個計時器,該計時器將持續執行,直到您停止它,並且它將每 10 分鐘向 $chan 傳送訊息“這是 <chan> 的自動公告 - 請享受您在 <chan> 的停留”。


現在,還有一些雜項命令。
/timers 這將列出所有計時器。
/timer[N/name] off 這將關閉一個計時器
$ltimer 這將返回剛啟動的計時器的編號。

示例
/timer1 1 2 /echo Hello World!!!!
/timer2 1 2 /echo Hello World!!!!
/timer 1 2 /echo Hello World!!!!
$ltimer > 將返回 3

/timerwho 0 600 /who $chan
$ltimer > 將返回 who

華夏公益教科書