|
楼主 |
发表于 2018-1-15 18:01:15
|
显示全部楼层
下面是我觉得有问题的部分,麻烦看以下
local didian=GetVariable("didian")
local miaoshu=GetVariable("miaoshu")
local chukou=GetVariable("chukou")
local HB_luanru=GetVariable("HB_luanru")
local HB_lrdidian=GetVariable("HB_lrdidian_"..HB_luanru)
local HB_lrmiaoshu=GetVariable("HB_lrmiaoshu_"..HB_luanru)
local HB_lrchukou=GetVariable("HB_lrchukou_"..HB_luanru)
local HB_lrlj=GetVariable("HB_lrlj")
local HB_lrcs=tonumber(GetVariable("HB_lrcs"))
if didian~=HB_lrdidian or miaoshu~= HB_lrmiaoshu or chukou~=HB_lrchukou then
Note("不是这里")
DoAfterSpecial(1,revfx(HB_lrlj),10)
HB_lrcs=HB_lrcs+1
SetVariable("HB_lrcs",HB_lrcs)
DoAfterSpecial(2,"set HB_jieduan luanru",10)
else
Note("找回原路")
SetVariable("HB_lrcs","1")
DoAfterSpecial(1,revfx(HB_lrlj),10)
DoAfterSpecial(2,"set HB_jieduan fanhui",10)
end
其中didian/miaoshu/chukou为被踢后room的信息(比如从城中心踢到西大街,则是西大街的信息), lrdian/lrmiaoshu/lrchukou 则是要检查的周围房间的信息, lrlj是从出口提取的方向变量. 所以每次到这种情况机器人都会扔下镖车,在附近房间走去检查,但问题是附近房间的信息当然无法符合本身didian/miaoshu(原地不动)的信息,结果就这样走几轮后就卡在那里了.
另外我尝试过,假如把车直接gan去别的房间(比如north),然后south回来则能通过判定(因为这样目的地房间就变成了原来的房间,则判定通过.
下面是我的猜测,假如被踢的只有车而不是人(人和车不在同一房间),则上面的触发都能正常判定,问题是当人和 车同时被踢时问题就来了. |
|