我在编写游戏时遇到了问题。我正在使用 Slick 库和轻量级 Java 游戏库。我试图让我的玩家(飞机)去地图上的某个区域。例如,如果我将目标坐标设置为 (50,50),我的飞机将在 X 上转到 50,然后在 Y 上转到 50。但我被困在旋转中。我试图让我的飞机旋转到 90 度,就像玩家控制它时那样,所以我不想只设置我希望它以正常速率(0.2*delta)旋转的旋转,直到它达到 90 度。
下面的代码仅在飞机当前向左旋转时才有效。
这是我当前的代码。
if(AIToggle){
AIStatus = "ON";
if(TargetX < x){
if(plane.getRotation() < 0 ){
if(plane.getRotation()<=-270 ){
plane.rotate(-0.2f * delta);
}
}
}
}
它目前的作用:如果飞机向左旋转超过 90 度并且 AI 开启,那么它将慢慢将其旋转到 0 度。这是我不明白的。
我试图让它做的事情:如果飞机向左旋转超过 90 度,则将飞机旋转到 -90 度然后停止。