我的代码:
if(key == KeyEvent.VK_SPACE){
tempObject.setJumping(true);
tempObject.setVelY(-10);
}
在此代码中,当我按空格键时,播放器会清晰地跳跃。除非那不是结束的地方,否则我不会这样做。当我按住空格键时,播放器飞行。我尝试了一个计时器,但是它不允许快速跳跃,这对于平台游戏来说是必需的。提前致谢。
最佳答案
尝试创建一个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
可以简单地忽略播放器当前跳跃时出现的任何跳跃事件。关于java - JAVA-不允许按住跳转按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40008908/