/<
lastmsg=""
function getw(l1,l2)
local t={};local ti={}
local w=""
local pe=0;local ps=0
l1=l1:gsub(" "," ")
l2=l2:gsub(" "," ")
repeat
ps,pe,w=l1:find("([^%s]+)",pe+1)
if w then t[ps]=w;table.insert(ti,ps) end
until not ps
pe=0;ps=0
repeat
ps,pe,w=l2:find("([^%s]+)",pe+1)
if w then t[ps]=w;table.insert(ti,ps) end
until not ps
table.sort(ti)
return t,ti
end
function getb(s)
local t={}
for title,cmd in s:gmatch("<([^/]+)/(@[^>]+)>") do
title=取汉字拼音(title)
t[title]=cmd
end
return t
end
function 过验证()
local str=获取NPC对话内容()
local tt={}
for v in str:gmatch(">{*([^>\\]+)\\") do
if #v>10 then
table.insert(tt,v)
end
end
if not tt[1] or not tt[2] then return end
local t,ti = getw(tt[1],tt[2])
local cmd=nil
for k,v in pairs(ti) do
local cmds=getb(str)
cmd = cmds[取汉字拼音(t[v])]
if cmd then
print(cmd)
选择(cmd)
等待(1500)
end
end
lastmsg=str
end
过验证() -- 回收验证保留此行,删除下面一行
设置用户检测("过验证",2000) -- 脱机验证保留此行,删除上面一行
/>