我试图在C#中的游戏项目中实现一种方式,让用户可以更改用于移动角色的键(向上键,向左键和向右键)。我在选项菜单中创建了按钮,但是当我点击这些按钮时,我还在试图弄清楚要放入什么内容。我已经在论坛中查了一下,并没有找到任何真正有用且易于理解的东西......
我希望当我点击按钮定义例如Up按钮等待玩家将要进行的下一个输入时,但我还没找到一些东西,简单。
有人可以帮帮我吗?我希望我的问题是可以理解的。
答案 0 :(得分:0)
这是完全未经测试的,但似乎它应该在我的脑海中起作用
KeyboardState有一个名为GetPressedKeys
的方法,所以你需要做的就是检查你定义的键是否包含在这个列表中。
例如,(未经测试)
Key UserDefinedUpKey = Keys.Up;
//UpdateMethod...
var keys = currentKeyboardState.GetPressedKeys();
if(keys.Contains(UserDefinedUpKey))
//Up pressed
答案 1 :(得分:0)
就像Sayse所说,我会使用KeyboardState.GetPressedKeys()方法,他们将返回按下的键。我想你可以检查一下这是否为空(未经测试);
while(currentKeyboardState.GetPressedKeys() == null)
你可以创建一个屏幕(比如战场或CoD),然后按下#34;按键指定转发"。一旦用户按下某个键,您就可以存储该枚举。将枚举写入注册表或类似的东西。