tick counter script for zmud.. - Delving , 18.01.2003 22:20 MSK | ||
и так, в zmud'е существует встроенный tick counter, находиться он в Actions -- > tick timer в этом окне можно выставить время тика, сообщение которое нужно показывать за несколько секунд до тика (кол-во секунд тоже выставляется) при этом, для того чтобы получить групповой тик таймер достаточно написать один триггер: #tset 59 (время тика 59 секунд) #TRIGGER {^TICK IN %1 SECONDS.} {grouptell %1 seconds left} И все было бы хорошо, но "время на земле и в космосе летит не одинаково":), иными словами тикер постоянно десинхронизируется со временем в маде и его нужно постоянно фиксить. Это можно сделать двумя способами: 1 способ: реакция на сообщения мада , которые происходят только во время тика. #TRIGGER {^The sun rises in the east.} {#tset 59} но такие сообщения появляются далеко не каждый тик. 2 способ: реакция на повышение маны, мана в отличие от HP поднимается только во время тика. #TRIGGER {^ < %1hp %2ma %3mv > } {#if %2 > @mana {#tset 59};#var mana %2} единственный минус этого способа в том, что если вокруг не происходит никаких событий, то вы и не узнаете о том что мана у вас поднялась, и тикфиксер не сработает, а затем где-нибудь в середине тика вы нажимаете интер , появиться сообщение < 800hp 400ma 150mv > , а до этого маны было, допустим, 300 и тикфиксер сработает... но зато в следующий тик он автоматически синхронизируется.. Теперь нужно сделать возможным отключение и включение сообщений в группу, так как если о том что до тика осталось 10 секунд в группе сообщают сразу 5 человек , это никому не нравится. для этого введем переменную tickmess #TRIGGER {^TICK IN %1 SECONDS.} {#if @tickmess {grouptell %1 seconds left} {} } т.е если переменная tickmess равно 1 (true) , то выдаем сообщение ,если =0(false), то не делаем ничего. осталось написать алиас для включения и выключения #ALIAS tickon {#var tickmess 1;grouptell Tick counter ON} #ALIAS tickOff {#var tickmess 0;grouptell Tick counter OFF} или можно повесить кнопку #BUTTON 1 {Ticker OFF} {#var tickmess 1;grouptell Tick counter ON} {Ticker ON} {#var tickmess 0;grouptell Tick counter OFF} {} {1} {} {Size} {86} {20} {} {} {} {79} {47} {} {} "" {} {} {} {2} Дополнения и навороты... при вводе команды #t? сообщение о том, сколько секунд осталось до тика. пишем алиас #ALIAS tick {#t?} теперь,если мы пишем tick в консоли, то zmud выдает Tick in 38 secs, на что срабатывает триггер написанный выше, и при включенном тикмессадже выдает сообщение в группу , что до тика осталось 38 секунд еще можно сделать так чтобы лидер группы мог выяснить, сколько же так до тика осталось долбаных секунд #TRIGGER {^@leader %1 tick'} {tick} вроде все.. сильно не ругайте:) | ||
|