推 aiggkimd :soga!!!! 05/24 08:40
→ aiggkimd :這table是自己建一個文件檔在路徑填上去? 05/24 09:15
→ aiggkimd :還是寫在alias裡面 05/24 09:15
→ aiggkimd :if 那串是放在哪? 05/24 09:20
推 aiggkimd :Execute括號裡不用加"嗎?第二個Exe後面是多一個 ) ?? 05/24 10:08
→ hmml :全部寫在alias裡面,table在前,if在後 05/24 17:51
→ hmml :Execute裡的東西是變數的時候不須加'' 05/24 17:51
→ hmml :字串才需要。 05/24 17:52
→ hmml :對呀...漏刪一個) 05/24 17:58
推 aiggkimd :跑完所有步數就會出問題..我只能在最後加上 05/24 20:34
→ aiggkimd :if step =最後一格 then step=1 才不會出問題 .orz 05/24 20:35
→ aiggkimd :變一個loop. 05/24 20:35
推 aiggkimd :不加那段,改if的第一行也行 05/24 20:43
→ aiggkimd :不過這樣就變成要自己算最後一步是第幾步 05/24 20:45
我的處理方式是建立一個別名,如:
setwalk(\S+) --正則格式,(\S+)為%1
if '%1' == 'off' then --%1=off 則
#SetTimerOption ("計時器label", "Enabled", "n")--將計時器關閉
elseif '%1' == 'on' then --%1=on 則
#SetTimerOption ("計時器label", "Enabled", "y")--將計時器打開
else --其它
step = '%1' --設定計步器
end --結束
然後將table最後一步用上面這個別名取代:
原本是這樣:
[[#SetTimerOption ("計時器label", "Enabled", "n")]]
改成:
[[setwalknil;setwalkoff]]
↑ └關閉計時器。
└把計步歸零(setwalk0)或移除(setwalknil)。
MushClient比較怪的地方,就是別的指令在table表可以塞很多個去執行,
但函數就必須一條一個位置,所以函數最好弄成一個別名去執行。
即:
一個別名放路徑加上執行。
一個計時器用來執行上述的路徑。
一個別名用來調整上述兩項的各個設定。
以上三個是主體。再來就是依實際房間的描述或發生的事件,
建立必要的觸發去開關它。
有需要的話:
再加一個定時器,定時去啟動上述的計時器。
※ 編輯: hmml 來自: 220.132.196.45 (05/25 10:32)
→ aiggkimd :soga!! 05/25 10:49
→ aiggkimd :最後的step = '%1' 我改成 step = %1 才正常 05/25 15:31
推 aiggkimd :用timer有個缺點,lag就全亂掉 05/25 17:09
推 aiggkimd :我取消timer的用法,直接抓明顯路口這句 05/25 17:15
→ aiggkimd :沒戰鬥就Execute路徑,遇到戰鬥就不做動作 05/25 17:17
→ aiggkimd :戰鬥結束在Execute路徑,也是可以 05/25 17:17
→ hmml :啊對!我忘了索引型態才要加''。sorry 05/25 23:57
→ hmml :因為我是用刀客為基準去弄的,所以比較沒去管lag.. 05/25 23:58
→ hmml :step = '1' 資料型態為字串,用於['1'] = [[test]] 05/26 00:00
→ hmml :step = 1 資料型態為數值,則用去現在這種table表 05/26 00:02
→ hmml :聖殿的戰鬥有一個優點,就是戰鬥開始的訊息早路口訊 05/26 00:05
→ hmml :息出現,所以來得及關掉路徑觸發。 05/26 00:06