//=========== UPDATING =========== #region Updating /** <summary> Called every step to update the button states. </summary> */ public static void Update(GameTime gameTime) { for (int i = 0; i < 4; i++) { XnaPlayer player = (XnaPlayer)i; buttons[i, (int)Buttons.A].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.A)); buttons[i, (int)Buttons.B].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.B)); buttons[i, (int)Buttons.X].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.X)); buttons[i, (int)Buttons.Y].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.Y)); buttons[i, (int)Buttons.Start].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.Start)); buttons[i, (int)Buttons.Back].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.Back)); buttons[i, (int)Buttons.Home].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.BigButton)); buttons[i, (int)Buttons.LeftShoulder].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.LeftShoulder)); buttons[i, (int)Buttons.RightShoulder].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.RightShoulder)); buttons[i, (int)Buttons.LeftStickButton].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.LeftStick)); buttons[i, (int)Buttons.RightStickButton].Update(1, XnaGamePad.GetState(player).IsButtonDown(XnaButtons.RightStick)); Vector2F dPad = Vector2F.Zero; if (XnaGamePad.GetState(player).IsButtonDown(XnaButtons.DPadRight)) { dPad.X = 1; } if (XnaGamePad.GetState(player).IsButtonDown(XnaButtons.DPadDown)) { dPad.Y = 1; } if (XnaGamePad.GetState(player).IsButtonDown(XnaButtons.DPadLeft)) { dPad.X = -1; } if (XnaGamePad.GetState(player).IsButtonDown(XnaButtons.DPadUp)) { dPad.Y = -1; } if (dPad.X != 0.0f && dPad.Y != 0.0f) { dPad.X /= GMath.Sqrt(2.0f); dPad.Y /= GMath.Sqrt(2.0f); } sticks[i, (int)Buttons.DPad].Update(1, dPad); Vector2F stick = Vector2F.Zero; stick = XnaGamePad.GetState(player).ThumbSticks.Left; stick.Y *= -1; sticks[i, (int)Buttons.LeftStick].Update(1, stick); stick = XnaGamePad.GetState(player).ThumbSticks.Right; stick.Y *= -1; sticks[i, (int)Buttons.RightStick].Update(1, stick); float trigger = XnaGamePad.GetState(player).Triggers.Left; triggers[i, (int)Buttons.LeftTrigger].Update(1, trigger); trigger = XnaGamePad.GetState(player).Triggers.Right; triggers[i, (int)Buttons.RightTrigger].Update(1, trigger); } }
public RumbleData(TimeSpan time, Microsoft.Xna.Framework.PlayerIndex player, float left_motor, float right_motor, float mult) { Time = time; Player = player; _LeftMotor = left_motor; _RightMotor = right_motor; Multiplier = mult; }
public GamePad(DisposableI parent, GamePadControllers controller) : base(parent) { input = parent.FindParentOrSelfWithException <Input>(); input.UpdateCallback += Update; switch (controller) { case GamePadControllers.All: useAllControllers = true; break; case GamePadControllers.One: playerIndex = F.PlayerIndex.One; break; case GamePadControllers.Two: playerIndex = F.PlayerIndex.Two; break; case GamePadControllers.Three: playerIndex = F.PlayerIndex.Three; break; case GamePadControllers.Four: playerIndex = F.PlayerIndex.Four; break; default: Debug.ThrowError("GamePad", "Unsuported controller"); break; } Back = new Button(); Start = new Button(); A = new Button(); B = new Button(); X = new Button(); Y = new Button(); LeftBumper = new Button(); RightBumper = new Button(); LeftStickButton = new Button(); RightStickButton = new Button(); DLeft = new Button(); DRight = new Button(); DDown = new Button(); DUp = new Button(); LeftTrigger = new Trigger(); RightTrigger = new Trigger(); LeftStick = new Vector2(); RightStick = new Vector2(); }
public GamePad(DisposableI parent, GamePadControllers controller) : base(parent) { input = parent.FindParentOrSelfWithException<Input>(); input.UpdateCallback += Update; switch (controller) { case GamePadControllers.All: useAllControllers = true; break; case GamePadControllers.One: playerIndex = F.PlayerIndex.One; break; case GamePadControllers.Two: playerIndex = F.PlayerIndex.Two; break; case GamePadControllers.Three: playerIndex = F.PlayerIndex.Three; break; case GamePadControllers.Four: playerIndex = F.PlayerIndex.Four; break; default: Debug.ThrowError("GamePad", "Unsuported controller"); break; } Back = new Button(); Start = new Button(); A = new Button(); B = new Button(); X = new Button(); Y = new Button(); LeftBumper = new Button(); RightBumper = new Button(); LeftStickButton = new Button(); RightStickButton = new Button(); DLeft = new Button(); DRight = new Button(); DDown = new Button(); DUp = new Button(); LeftTrigger = new Trigger(); RightTrigger = new Trigger(); LeftStick = new Vector2(); RightStick = new Vector2(); }
public void Contribute(XF.PlayerIndex player, float score) { points[player] += score; }
public float GetContribution(XF.PlayerIndex player) { return(points[player]); }
public override void HandleInput(Microsoft.Xna.Framework.PlayerIndex playerIndex) { }
public void bind(Microsoft.Xna.Framework.PlayerIndex control, Microsoft.Xna.Framework.Input.Buttons button) { bound = true; this.control = control; this.binding = button; }
private void MyOnGamePadDPadUpdate(CCGamePadButtonStatus leftButton, CCGamePadButtonStatus upButton, CCGamePadButtonStatus rightButton, CCGamePadButtonStatus downButton, Microsoft.Xna.Framework.PlayerIndex player) { // Down and Up only if (rightButton == CCGamePadButtonStatus.Pressed) { if (_FirstTicks == 0L) { _FirstTicks = DateTime.Now.Ticks; _bDownPress = true; } } else if (rightButton == CCGamePadButtonStatus.Released && _FirstTicks > 0L && _bDownPress) { _FirstTicks = 0L; nextCallback(null); _bDownPress = false; } if (leftButton == CCGamePadButtonStatus.Pressed) { if (_FirstTicks == 0L) { _FirstTicks = DateTime.Now.Ticks; _bUpPress = true; } } else if (leftButton == CCGamePadButtonStatus.Released && _FirstTicks > 0L && _bUpPress) { _FirstTicks = 0L; backCallback(null); _bUpPress = false; } }
protected virtual void OnGamePadTriggerUpdate(float leftTriggerStrength, float rightTriggerStrength, Microsoft.Xna.Framework.PlayerIndex player) { }
/// <summary> /// Handles "Exit" menu item selection /// </summary> protected override void OnCancel(Microsoft.Xna.Framework.PlayerIndex playerIndex) { backgroundScreen.ExitScreen(); ExitScreen(); }
protected virtual void OnGamePadButtonUpdate(CCGamePadButtonStatus backButton, CCGamePadButtonStatus startButton, CCGamePadButtonStatus systemButton, CCGamePadButtonStatus aButton, CCGamePadButtonStatus bButton, CCGamePadButtonStatus xButton, CCGamePadButtonStatus yButton, CCGamePadButtonStatus leftShoulder, CCGamePadButtonStatus rightShoulder, Microsoft.Xna.Framework.PlayerIndex player) { }
protected virtual void OnGamePadConnectionUpdate(Microsoft.Xna.Framework.PlayerIndex player, bool IsConnected) { }
protected virtual void OnGamePadDPadUpdate(CCGamePadButtonStatus leftButton, CCGamePadButtonStatus upButton, CCGamePadButtonStatus rightButton, CCGamePadButtonStatus downButton, Microsoft.Xna.Framework.PlayerIndex player) { if (!HasFocus) { return; } }
protected virtual void OnGamePadStickUpdate(CCGameStickStatus leftStick, CCGameStickStatus rightStick, Microsoft.Xna.Framework.PlayerIndex player) { }
/// <summary> /// Constructor of GamePad class /// </summary> /// <param name="index"></param> internal GamePad(XnaPlayerIndex index) { _gamePadIndex = index; _buttonPressed = new ReadOnlyCollection<ButtonEvent>(InternalButtonPressed); }
private void MyOnGamePadButtonUpdate(CCGamePadButtonStatus backButton, CCGamePadButtonStatus startButton, CCGamePadButtonStatus systemButton, CCGamePadButtonStatus aButton, CCGamePadButtonStatus bButton, CCGamePadButtonStatus xButton, CCGamePadButtonStatus yButton, CCGamePadButtonStatus leftShoulder, CCGamePadButtonStatus rightShoulder, Microsoft.Xna.Framework.PlayerIndex player) { if (aButton == CCGamePadButtonStatus.Pressed) { _aButtonWasPressed = true; } else if (aButton == CCGamePadButtonStatus.Released && _aButtonWasPressed) { // Select the menu restartCallback(null); } if (yButton == CCGamePadButtonStatus.Pressed) { _yButtonWasPressed = true; } else if (yButton == CCGamePadButtonStatus.Released && _yButtonWasPressed) { CCNode node = GetChildByTag(kTagTileMap); node.RunAction(new CCRotateBy(1f, 15f)); } if (xButton == CCGamePadButtonStatus.Pressed) { _xButtonWasPressed = true; } else if (xButton == CCGamePadButtonStatus.Released && _xButtonWasPressed) { CCNode node = GetChildByTag(kTagTileMap); if (node != null) { node.RunAction(new CCRotateBy(1f, -15f)); } } }