我正在与其他一些人一起开展一个小型Java游戏,我对关键事件感到有些困惑。我在网上找到了一个处理2D游戏键盘输入的代码片段。我很困惑的是如何根据您所在的游戏部分来回应某些关键事件。例如,如果您在主菜单中,W,A,S和D不应该工作,但如果你在比赛中他们应该。
到目前为止,我能够提出的唯一解决方案就是使用枚举和开关来确定应该监听哪些键。这可行,但我不确定是否有更好的方法。
如何根据屏幕上下文监听特定的Java密钥事件?
答案 0 :(得分:1)
为每个游戏状态(“主菜单”,“就绪屏幕”,“播放状态”等)创建一个类,可以在超类和游戏状态特定的侦听器和逻辑中实现一次常用的KeyListener样板。 / p>
从内存中Slick library提供了支持此方法的API。