问题描述
|
我在网上四处张望,需要一些帮助。是否有链接指向XBox 360控制器的所有按钮的示例代码。例如:
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.pressed)
this.Exit();
我知道如果您按回控制器,这将退出游戏。
我只需要操纵杆,D-pad和所有按钮的状态示例。
解决方法
您是否签出了MSDN XNA输入文档?它并没有真正的示例,但是您似乎已经知道如何处理输入。
那里的文章包含有关输入的所有信息。
您可以通过ѭ1进入所有的控制器按钮
可以通过
GamePad.GetState(PlayerIndex.One).Thumbsticks
获得的操纵杆
和您可以通过GamePad.GetState(PlayerIndex.One).DPad
获得的D-Pad
, 另外,为按钮编写包装是一个非常好的主意。
我的意思是:编写一个检查每个按钮并保持该按钮在此帧上移和在最后一帧下移的状态的类,然后它可以仅报告按钮被按下。
这省去了您检查每个框架并维护客户端代码中的状态的麻烦。从IGameComponent派生您的类,然后在运行时将其添加到Game类的Component集合中。