public override void HandleGamePadInput(InputState input) { if (input.GamePadWasConnected) { PlayerIndex player; if (input.IsNewGamePadButtonPress(Buttons.Back, out player) || input.IsNewGamePadButtonPress(Buttons.B, out player)) { OnCancel(player); } else if (input.IsNewGamePadButtonPress(Buttons.Start, out player) || input.IsNewGamePadButtonPress(Buttons.A, out player)) { OnSelectEntry(selectedEntry, PlayerIndex.One); } else if (input.IsNewGamePadButtonPress(Buttons.LeftThumbstickUp, out player) || input.IsNewGamePadButtonPress(Buttons.DPadUp, out player)) { if (selectedEntry > 0) selectedEntry--; } else if (input.IsNewGamePadButtonPress(Buttons.LeftThumbstickDown, out player) || input.IsNewGamePadButtonPress(Buttons.DPadDown, out player)) { if (selectedEntry < menuEntries.Count - 1) selectedEntry++; } } }
/// <summary> /// Input helper method provided by GameScreen. Packages up the various /// input values for ease of use. /// </summary> /// <param name="input">The state of the gamepads</param> public override void HandleInput(InputState input) { PlayerIndex player; if (input == null) throw new ArgumentNullException("input"); if (input.IsNewKeyPress(Keys.F12, out player)) { if (!Windows.UI.ViewManagement.ApplicationView .GetForCurrentView().IsFullScreen) Windows.UI.ViewManagement.ApplicationView .GetForCurrentView().TryEnterFullScreenMode(); else Windows.UI.ViewManagement.ApplicationView .GetForCurrentView().ExitFullScreenMode(); } if (gameOver) { if (input.IsPauseGame()) { FinishCurrentGame(); } if (input.IsNewKeyPress(Keys.Space, out player) || input.IsNewKeyPress(Keys.Enter, out player)) { FinishCurrentGame(); } if (input.IsNewGamePadButtonPress(Buttons.A, out player) || input.IsNewGamePadButtonPress(Buttons.Start, out player)) { FinishCurrentGame(); } if (input.IsNewMouseButtonPress(MouseButtons.LeftButton, out player)) { FinishCurrentGame(); } foreach (GestureSample gestureSample in input.Gestures) { if (gestureSample.GestureType == GestureType.Tap) { FinishCurrentGame(); } } return; } }