我創建一個小遊戲作爲我的學習項目,使用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 –