我创建一个小游戏作为我的学习项目,使用Java和Libgdx。 游戏非常简单:2D,侧视图,用箭头键控制,一切都看起来像在一个网格划分单位(球员是1个单位高,环境潮汐是1单位高,...)。 问题在于角色的移动很快(并且必须是),所以很难只向左或向右移动一个单位。 我想知道是否可以在键盘的两个输入之间创建一个延迟,因为运动部分处于“更新”方法中,所以每次按下它创建的键时,都会有5或10个输入。 我试图用Java定时器(如0.2或0.3秒)来处理它,每次按下按键时都会发生这种情况,并且无法让程序在监听完键盘之前收听键盘。但我发现它很脏,所以我要求你的帮助,以更体面的方式引导我做到这一点。谢谢。两个输入之间的延迟java
2
A
回答
0
通过比较上次使用时间和当前时间,可以轻松实现一种冷却类型的东西。
double coolDownInMillis = 1200;
double lastTime = 0;
public void move() {
double now = System.currentTimeMillis();
if(lastTime - now > coolDownInMillis && pressingTheRightKey()){
//do what you want
lastTime = System.currentTimeMillis();
}
}
或类似的东西。
相关问题
- 1. 两个MediaElement之间的延迟
- 2. 两个Azure VM之间的延迟
- 3. bash之间插入延迟
- 4. 两个或多个数字输入的击键之间的延迟
- 5. 在Java中绘制两个图标之间的延迟
- 6. java程序中两个线程之间的延迟
- 7. 两个命令Java之间的延迟? - 游戏
- 8. 在jmeter中的两个线程组之间引入延迟
- 9. 如何每秒只获得一次密钥输入? (或延迟两个键盘输入之间的时间)
- 10. 延迟两者之间 - 图形
- 11. 两个音频信号之间的时间延迟估计
- 12. 带时间延迟的文本输入
- 13. Java时间延迟
- 14. 功能之间的延迟
- 15. 打印之间的延迟
- 16. jQuery:addclass()之间的延迟()
- 17. 动画之间的延迟
- 18. 两次连续的KeyDown事件之间的延时延迟
- 19. JavaScript输入和输出之间的一个(按键事件)延迟
- 20. 在反应中显示输入值之间的延迟
- 21. 在调用java中的一组方法之间引入延迟
- 22. 每个迭代之间的延迟()
- 23. 每个foreach之间的延迟javascript/php
- 24. 2个函数之间的延迟
- 25. 2个动画之间的延迟
- 26. 需要在两个效果之间创建一个延迟Wpf
- 27. 延迟两个线程之间的通信
- 28. 两个固定主机之间的网络延迟变化
- 29. TCL中两个期望之间的延迟
- 30. 在j2me中提供两个代码之间的延迟
当你做GUI游戏思考游戏循环。看它会让你的生活更轻松。 http://gameprogrammingpatterns.com/game-loop.html –