Slick的Input
类具有isKeyPressed()
方法,该方法根据是否已按下指定的键来返回布尔值。我想实现一种检查密钥是否以相同方式释放的方法。
我研究了在输入对象中添加KeyListener
并覆盖keyReleased()
方法。但是,我当前处理输入的方式是在update()
的BasicGame
方法中。通过实现上述解决方案,我分解了我的代码,并在两个要避免的地方处理了输入。
最佳答案
输入没有keyReleased方法,因为它是类的轮询类型。如果按下了该键,则仅保留一个布尔值,然后根据请求查看是否被input.isKeyPressed(VK_KEY)按下了该值。
如果您看一下Kevin Glass在光滑主干中提供的InputTest示例,您将看到BasicGame和BasicGameState都带有一个称为isKeyPressed / isKeyReleased的方法。
InputTest.java Slick2D resource
这些是您正在寻找的方法,因为它们将使您对按下或释放键时的操作有更多的控制。