1

如何实现 KeyListener 以便我可以创建一个两人使用的系统,其中一个人使用“。” 和'/'来控制一个角色,而对方可以使用方向键而不会互相干扰?我现在的方式是,当一个人按住箭头键时,他们的角色会移动,但是当您使用其他玩家的控件时,第一个人的角色就会停止。

4

2 回答 2

3

创建一个HashMap<Int,Boolean>标记当前按下/按下的键。

然后在您的游戏循环中,您可以根据该地图中的按键是否被按下来移动您的对象。

例如:

if (keyMap.get(VK_COLON) == Boolean.TRUE) //True indicates pressed
   playerAXPos+= 10;
于 2012-08-29T02:43:52.740 回答
1

从您正在收听的keyPressed事件的声音。基本上,您需要维护有关当前“关闭”哪些键的状态信息,并且仅在keyReleased事件发生时停止适当的操作。

这将需要有两个单独的行操作处理程序,一个用于按下键时,一个用于释放键时。

您可能需要做的另一件事是维护某种活动键的缓存......当我输入时,Ethan 刚刚提到:P

于 2012-08-29T02:45:16.937 回答