[心得] Mushclient擷取頻道訊息的觸發
說明:
一、弱弱的新手常常死,所以把頻道訊息抓下來存檔,只抓頻道格式的訊息,tell
和reply也可以抓,但是找不到太好的方法避免tell的誤抓,所以直接放棄,
以後有機會再來改XD
二、存檔的判斷句1073741824,是1GB左右的檔案大小,用vi開就很吃力了,可以
改成1048576(1MB左右)。
PS1. 底下「.. logtime .. ".txt", 0)」這一段的斷句是因為超出頁面,如果貼上後不
能用,請在mushclient中移到上一行的最後面。
===================================觸發======================================
<trigger
enabled="y"
group="Chatlog"
match="^(\> )*【(\S+)】(.*)$"
name="tunnel01"
regexp="y"
send_to="12"
sequence="100"
>
<send>
world = GetWorldById(GetWorldID())
if world.GetNotepadList() then
for k,v in pairs(world.GetNotepadList()) do
if v == "Jins-ChatLog" then
acted = 1
break
end
acted = 0
end
if acted == "0" then
world.ActivateNotepad("Jins-ChatLog")
end
else
world.ActivateNotepad("Jins-ChatLog")
end
tunnel = "%2"
msg = "%3"
if tunnel == "論道江湖" or tunnel == "謠言四起" or tunnel == "神話傳說"
or tunnel == "天災人禍" then
logtime = os.date("%Y-%m-%d-%H-%M-%S")
logmsg = logtime .. " 【" .. tunnel .. "】 " .. msg
world.AppendToNotepad("Jins-ChatLog", "\\r\\n" .. logmsg)
loglength = world.GetNotepadLength("Jins-ChatLog")
if tonumber(loglength) > 1073741824 then
world.SaveNotepad("Jins-ChatLog", "D:/MushClient/worlds/jins/Logs/"
.. logtime .. ".txt", 0)
world.CloseNotepad("Jins-ChatLog", 0)
end
end
</send>
</trigger>
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 112.104.181.23
※ 文章網址: https://www.ptt.cc/bbs/mud_jy/M.1443518767.A.69C.html
※ 編輯: rsliang (112.104.181.23), 09/29/2015 17:31:07
mud_jy 近期熱門文章
PTT遊戲區 即時熱門文章
107
356