我正在制作一个游戏,它是一个计算机控制的炮塔.炮塔可以旋转360度.
它使用trig来找出瞄准枪所需的角度(objdeg)并且枪的当前角度存储在(gundeg)中
以下代码以设定的速度旋转喷枪
if (objdeg > gundeg)
{
gundeg++;
}
if (objdeg < gundeg)
{
gundeg--;
}
Run Code Online (Sandbox Code Playgroud)
问题是如果有一个10度的物体,枪会旋转,射击并摧毁它,如果另一个目标出现在320度,则枪将逆时针旋转310度,而不是顺时针旋转60度以击中它.
如何修复我的代码,使其不会愚蠢?
algorithm ×1