下午终于确定了点第二个房子不能移动的原因 原来据点和第一步的坐标重叠后movefarmerto这个action会死循环
我试图判断deltaxy为0时将taken设为duration来结束action但是没有用 最后只好在建房子的时候将farmer坐标微移 但这不是长久之计 接下来尝试解决这个问题
仔细调试后发现导致死循环的原因是“原地踏步”造成的duration置0,而0是idle状态,导致循环;目前解决方法是判断direction为0时就强制状态为move,以后估计还要修改
下午终于确定了点第二个房子不能移动的原因 原来据点和第一步的坐标重叠后movefarmerto这个action会死循环
我试图判断deltaxy为0时将taken设为duration来结束action但是没有用 最后只好在建房子的时候将farmer坐标微移 但这不是长久之计 接下来尝试解决这个问题
仔细调试后发现导致死循环的原因是“原地踏步”造成的duration置0,而0是idle状态,导致循环;目前解决方法是判断direction为0时就强制状态为move,以后估计还要修改