我的代码:
if(key == KeyEvent.VK_SPACE){
tempObject.setJumping(true);
tempObject.setVelY(-10);
}
在此代码中,当我按下SPACE键时,播放器会清晰地跳跃。除非它不是它结束的地方,否则我不会这样做。当我拿着SPACE栏时,玩家会飞。我尝试了一个计时器,但它不允许快速跳跃,这将是平台游戏所需要的。提前谢谢。
答案 0 :(得分:2)
尝试创建JumpingState
枚举:
enum JumpingState {NOT_JUMPING, JUMPING}
if (key == KeyEvent.VK_SPACE && jumpingState == JumpingState.NOT_JUMPING) {
jumpingState = JumpingState.JUMPING;
tempObject.setJumping(true);
// Start timer here to revert tempObject and set jumpingState back to NOT_JUMPING
}
与计时器结合使用,可用于控制玩家当前何时跳跃。玩家当前跳跃时遇到的任何跳跃事件都可以根据检查JumpingState
来忽略。