0
所以我试图做一些非常简单的事情,使用之前使用过键盘的游戏手柄。那就是创建一个旧状态来记录上次更新时按下的按钮。旧的GamePadState的Xbox控制器
因此,在使用键盘的时候我有一个看起来像这样的代码:
oldKeyboard = currentKeyboard;
这是放置在我更新的结束,意味着在下次更新时我能有if语句,像这样的
if (currentKeyboard.IsKeyDown(Keys.A) &&(oldKeyboard.IsKeyUp(Keys.A))
{
guy.drawRect.X ++;
}
现在我遇到的问题是,我在我的代码中使用Xbox游戏手柄,我只是不知道什么是正确的代码。目前这就是我所拥有的,它不工作:P。任何帮助将不胜感激。
void ShipUpdate(GamePadState Curr, GamePadState Old)
{
Curr = GamePad.GetState(PlayerIndex.One);
if (Old.ThumbSticks.Left.X > 0.0f && (Curr.ThumbSticks.Left.X == 0.0f))
{
move = MoveState.Still;
guy.srcRect.X = 0;
}
Old = Curr;
}
我已经在这里去除了所有非必要的代码,所以这是J.E.E.P
我自己设法解决这个问题。 的关键是在下面的行 无效ShipUpdate(GamePadState CURR,GamePadState旧) 有一次,我从这些线都去掉了手柄的状态工作就好了。这是更正的行。 void ShipUpdate() – Gandeh