我正在使用Slick2d(和Java)为MiniLD制作乒乓游戏,但是当我尝试制作AI时,它将无法正常工作。我在两个位置之间摇动。我需要帮助。这是我使用的代码。
static int maxSpeed = 3;
(...)
float ypos = ball.getCenterY() - (paddleCPU.getY() + maxSpeed);
paddleCPU.setY(ypos);
最佳答案
也许尝试实际将y的变化率限制在-maxSpeed和+ maxSpeed之间:
float dy = ball.getCenterY() - paddleCPU.getY());
dy = Math.max(-maxSpeed, Math.min(maxSpeed, dy));
paddleCPU.setY(paddleCPU.getY() + dy);