Exemplo n.º 1
0
    // ======================================================================================
    public static bool GetMenuButton(eMenuButton _menuButton)
    {
#if UNITY_EDITOR
        Debug.Assert(m_manager != null, "InputMgr - Missing InputMgrConfig in Project");
        if (m_manager.m_pcDebugMode && _menuButton == eMenuButton.SUBMIT)
        {
            return(Input.GetKey(KeyCode.Return));
        }
#endif

        bool isPressed = false;

        for (int player = 0; player < 4; player++)
        {
            GamePadState gamePadState = GamePad.GetState((PlayerIndex)(player));

            switch (_menuButton)
            {
            case eMenuButton.SUBMIT:
                isPressed |= GetButton(gamePadState, m_manager.m_submitButton);
                break;

            case eMenuButton.PREVIOUS:
                isPressed |= GetButton(gamePadState, m_manager.m_previousButton);
                break;

            case eMenuButton.PAUSE:
                isPressed |= GetButton(gamePadState, m_manager.m_pauseButton);
                break;

            case eMenuButton.LEFT:
                isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_LEFT) || gamePadState.ThumbSticks.Left.X < -m_manager.m_triggMinRatio;
                break;

            case eMenuButton.RIGHT:
                isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_RIGHT) || gamePadState.ThumbSticks.Left.X > m_manager.m_triggMinRatio;
                break;

            case eMenuButton.UP:
                isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_UP) || gamePadState.ThumbSticks.Left.Y > m_manager.m_triggMinRatio;
                break;

            case eMenuButton.DOWN:
                isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_DOWN) || gamePadState.ThumbSticks.Left.Y < -m_manager.m_triggMinRatio;
                break;

            case eMenuButton.CHANGE_COLOR:
                isPressed |= GetButton(gamePadState, m_manager.m_changeColorButton);
                break;
            }
        }

        return(isPressed);
    }
Exemplo n.º 2
0
    // ======================================================================================
    public static bool GetMenuButton(int _player, eMenuButton _menuButton)
    {
#if UNITY_EDITOR
        Debug.Assert(m_manager != null, "InputMgr - Missing InputMgrConfig in Project");
#endif

        if (_player > 4 || _player <= 0)
        {
            return(false);
        }

        bool isPressed = false;

        GamePadState gamePadState = GamePad.GetState((PlayerIndex)(_player - 1));

        switch (_menuButton)
        {
        case eMenuButton.SUBMIT:
            isPressed |= GetButton(gamePadState, m_manager.m_submitButton);
            break;

        case eMenuButton.PREVIOUS:
            isPressed |= GetButton(gamePadState, m_manager.m_previousButton);
            break;

        case eMenuButton.PAUSE:
            isPressed |= GetButton(gamePadState, m_manager.m_pauseButton);
            break;

        case eMenuButton.LEFT:
            isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_LEFT) || gamePadState.ThumbSticks.Left.X < -m_manager.m_triggMinRatio;
            break;

        case eMenuButton.RIGHT:
            isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_RIGHT) || gamePadState.ThumbSticks.Left.X > m_manager.m_triggMinRatio;
            break;

        case eMenuButton.UP:
            isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_UP) || gamePadState.ThumbSticks.Left.Y < -m_manager.m_triggMinRatio;
            break;

        case eMenuButton.DOWN:
            isPressed |= GetButton(gamePadState, eXBoxButton.DPAD_DOWN) || gamePadState.ThumbSticks.Left.Y > m_manager.m_triggMinRatio;
            break;

        case eMenuButton.CHANGE_COLOR:
            isPressed |= GetButton(gamePadState, m_manager.m_changeColorButton);
            break;
        }

        return(isPressed);
    }