feixiong 发表于 2012-4-26 21:00:39

wait函数内的变量抓去后无法传递到其他函数

本帖最后由 feixiong 于 2012-4-26 09:39 PM 编辑

在qtlsnew.lostman里抓的qtlsnew.lostcname=w,在qtlsautofind()里 qtlsnew.lostcname是空值
qtlsnew.lostman=function()
print("1 hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii")
wait.make(function()
local l,w=wait.regexp("^(> )*(.*)看着你,似乎想问什么,但又欲言又止。")
print("2 hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii"..w)
qtlsnew.lostcname=w   end)end

function qtlsnew.autofind()
print("正常调用autofind")
local count
      --local playername=GetVariable("playername")
         hb_trilist={
                        qtlsnew.lostcname.."说道:「是啊,我本要去(.*),结果迷路,不知道你能不能带我去?」\\w*",
                        qtlsnew.lostcname.."说道:「哎呀,我记错了,其实要去的是(.*)。」\\w*",
                        "你不是才要了任务吗?",
                        --'设定环境变量:aimroom = "change"',
                        }
               _hbtri=linktri(hb_trilist)
      wait.make(function()
                local l,w=wait.regexp(_hbtri,5)
                if l==nil then
                        Execute("l=nil")

                        return
                end
end)
end

linktri=function(triggerlist)
local _str=""
if triggerlist~=nil then
for k,v in pairs(triggerlist) do
_str=_str..v.."\\w*|"
end

_str="^(> |)("..rtrim("|",_str)..")"
----_str="^(> |)"..rtrim("|",_str)
else
print("system::>>Triggerlist is error")
end
return _str
end

function rtrim (r, s)
if s == nil then
s, r = r, "%s+"
end
return (r.gsub (s, r .. "$", ""))
end

北大侠客行MUD,中国最好的MUD
页: [1]
查看完整版本: wait函数内的变量抓去后无法传递到其他函数