|
楼主 |
发表于 2019-7-27 10:49:43
|
显示全部楼层
使用了这个之后,偶尔发现不知道什么状况会调用松树林的代码,有时甚至出现在渡口的位置,不知道路径的代码是这么运作的,感觉是调用迷宫的时候调用错了。有时候又会出现在华山地图中。甚至会导致雪山任务乱触发。
我第一次修正的时候,动了
hsssl_out=function()
EnableTimer('walkWait10',false)
sslend=0
if flag.find==1 then return end
if flag.wait==1 then return end
return walk_wait()
end
这个是岛主的源代码,出松树林之后赋值为0了,这个代表没找到石屋,而在错误的地方调用了这个,只能是死循环了,所以我把这个去掉了,改成在别的lua中赋值为0
什么意思呢,就是我接了华山任务,才会进松树林吧,这个时候我就赋值为0,找到石屋之后就赋值为1,然后不变,直到去到岳灵珊,我才赋值为0,准备好下次进入松树林。
改动之后,挂机10小时之后,问题继续出现,还是有时候出现不知道为什么会在错误的地点调用这个迷宫的函数。也许出现了多次,但由于我没在outssl之后直接赋值,调用的是walk——wait所以没有体现。
基于这个,错误我不清楚,但是我可以拨乱反正。
hsssl=function()
road.temp=0
if flag.find==1 then return end
if flag.wait==1 then return end
DeleteTriggerGroup("sslcheck")
create_trigger_t('sslcheck1',"^\\D*石屋",'','ssldone')
SetTriggerOption("sslcheck1","group","sslcheck")
EnableTriggerGroup("sslcheck",true)
exe('n;e;e;n;e;e;n;e;e')
print('多走几步,不知道会不会溢出')
hssslxz= hssslxz or 0 --添加不知道什么原因导致的死循环修正大于20次继续路径
hssslxz= hssslxz+1
if hssslxz > 20 then
sslend=1
hssslxz=0
--ljcc_Log()
end
if flag.find==1 then return end
wait.make(function()
wait.time(0.05)
create_timer_s('walkWait10',5,'ssllook')
return hsssl_checkk()
end)
end
要错就错吧,错了20步,就会默认找到石屋,继续路径。
在回答这个的过程中,我有了新的思路,就是既然可以用石屋来做触发,为什么不能用别的来做触发呢,因为只要在路径错误触发如什么。这个方向没有路就默认找到石屋不是又可以执行路径了?
由于存在不知名的错误,所以岛主这个补丁我只能提高一半左右的效率 |
评分
-
1
查看全部评分
-
|