コード例 #1
0
 void OnButtonReleased(XInput.Button button, int playerIndex)
 {
     if (this.button == button && this.playerIndex == playerIndex)
     {
         imgComponent.sprite = normalSprite;
     }
 }
コード例 #2
0
 void OnButtonPressed(XInput.Button button, int playerIndex)
 {
     if (this.button == button && this.playerIndex == playerIndex)
     {
         imgComponent.sprite = pressedSprite;
     }
 }
コード例 #3
0
ファイル: XInputInternal.cs プロジェクト: Eldoir/XInput
        private bool IsButtonPressedOrReleased(XInput.Button button, ButtonState prevButtonState, ButtonState buttonState)
        {
            switch (button)
            {
            case XInput.Button.A:
                return(prevState.Buttons.A == prevButtonState && state.Buttons.A == buttonState);

            case XInput.Button.B:
                return(prevState.Buttons.B == prevButtonState && state.Buttons.B == buttonState);

            case XInput.Button.Back:
                return(prevState.Buttons.Back == prevButtonState && state.Buttons.Back == buttonState);

            case XInput.Button.Guide:
                return(prevState.Buttons.Guide == prevButtonState && state.Buttons.Guide == buttonState);

            case XInput.Button.LeftShoulder:
                return(prevState.Buttons.LeftShoulder == prevButtonState && state.Buttons.LeftShoulder == buttonState);

            case XInput.Button.LeftStick:
                return(prevState.Buttons.LeftStick == prevButtonState && state.Buttons.LeftStick == buttonState);

            case XInput.Button.RightShoulder:
                return(prevState.Buttons.RightShoulder == prevButtonState && state.Buttons.RightShoulder == buttonState);

            case XInput.Button.RightStick:
                return(prevState.Buttons.RightStick == prevButtonState && state.Buttons.RightStick == buttonState);

            case XInput.Button.Start:
                return(prevState.Buttons.Start == prevButtonState && state.Buttons.Start == buttonState);

            case XInput.Button.X:
                return(prevState.Buttons.X == prevButtonState && state.Buttons.X == buttonState);

            case XInput.Button.Y:
                return(prevState.Buttons.Y == prevButtonState && state.Buttons.Y == buttonState);

            case XInput.Button.DPadUp:
                return(prevState.DPad.Up == prevButtonState && state.DPad.Up == buttonState);

            case XInput.Button.DPadDown:
                return(prevState.DPad.Down == prevButtonState && state.DPad.Down == buttonState);

            case XInput.Button.DPadLeft:
                return(prevState.DPad.Left == prevButtonState && state.DPad.Left == buttonState);

            case XInput.Button.DPadRight:
                return(prevState.DPad.Right == prevButtonState && state.DPad.Right == buttonState);

            default:
                return(false);
            }
        }
コード例 #4
0
 public XInputButton(XInput.Button id)
 {
     _id = id;
 }
コード例 #5
0
 public static InputSource XInputButton(XInput.Button id)
 {
     return(new InputSource(Peripheral.XInputGamepad, InputType.Button, new Interactable.XInputButton(id)));
 }
コード例 #6
0
ファイル: XInputInternal.cs プロジェクト: Eldoir/XInput
 public bool ButtonReleased(XInput.Button button)
 {
     return(IsButtonPressedOrReleased(button, ButtonState.Pressed, ButtonState.Released));
 }