我对文档中的命令排队并不完全清楚。是每个身体部位都执行了移动和攻击之类的命令,还是每个滴答只有一个动作,并且它在第一个成功的动作上起作用吗?
假设我有一个简单的攻击者:
...
creep.moveTo( enemy );
creep.attack( enemy );
...
当小兵离敌人一步之遥时,在下一个滴答中会发生什么?
它会尝试移动然后攻击
它会尝试攻击,失败然后尝试移动(先进先出)
它只会移动吗(先进先出,一个动作)
现在,例如:
...
creep.attack( enemy );
creep.moveTo( enemy );
creep.attack( enemy );
...
它会尝试攻击,失败然后移动,然后再次尝试攻击吗?
最佳答案
似乎有可能同时进行远程混战和移动动作。但您只能执行其中一项操作。因此,您在一帧中不能攻击或移动2次。据我所知,最后一个事件优先。
例如:
crawl.attack(target1);
crawl.attack(target2);
这里的小兵将首先攻击目标2。如果未定义target2,则将使用target1