我正在尝试使用java编写一个控制台游戏,当你按住某个键时,我希望它能够不断地移动你的角色。
这意味着我需要按键和按键释放事件,因为在按键开始输入同一个字母之前会有一个延迟。
我已经使用stty将终端设置为原始模式,但我似乎没有获得关键的发布事件。
这个答案似乎表明我确实可以从STDIN中获取这些事件:https://stackoverflow.com/a/1598436/2404047
在原始模式下,我实际收到的是大多数键的单字节,但在某些情况下,如箭头键,我得到多个字节。
有没有办法通过STDIN获取按键和释放事件,或者这样的控制台游戏根本不可行?
答案 0 :(得分:0)
这是你的误解。您无法使用纯java从控制台获取事件。
可能的解决方案是: