0

I want to use a XBOX 360 Controller to play sounds if the "A" Button is pressed. In my Code Snippet I've used a while loop to check if the Button is pressed. Are there any Event Handlers I can use or different solutions (It's not for Game Development)?

while (b == false)
{
    GamePadState currentState2 = GamePad.GetState(PlayerIndex.One);
    if (currentState2.IsConnected
         && currentState2.Buttons.A
                == Microsoft.Xna.Framework.Input.ButtonState.Pressed)
    {
         play1stTrack();
         isButtonApressed = true;

    }
}
4

1 回答 1

0

您的更新循环以每秒 60 帧的速度运行(通常),您可以使用这段时间检查输入并进行处理。无需为输入编写自己的循环。

例子:

protected override void Update(GameTime gameTime)
{
    GamePadState currentState2 = GamePad.GetState(PlayerIndex.One);
    if (currentState2.IsConnected
         && currentState2.Buttons.A
                == Microsoft.Xna.Framework.Input.ButtonState.Pressed)
    {
         play1stTrack();
         isButtonApressed = true;
    }
    //Handle input with isButtonApressed
}
于 2014-04-12T17:48:31.773 回答