如果您需要在一个方向上旋转180度以上以对准转塔,那么在另一个方向上旋转会更快。
我只是检查一下,然后朝适当的方向旋转
编辑:新解决方案if (objdeg != gundeg){ if ((gundeg - objdeg) > 180) gundeg++; else gundeg--;}
我已根据评论中的反馈改进了解决方案。这确定目标是在炮塔的“左”还是“右”,并确定转弯的方向。如果目标距离超过180度,它将反转该方向。
if (objdeg != gundeg){ int change = 0; int diff = (gundeg - objdeg)%360; if (diff < 0) change = 1; else change = -1; if (Math.Abs(diff) > 180) change = 0 - change; gundeg += change; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)