示例#1
0
    private void Move(DirectionalInputType _directionalInput, bool _firstDirectionalInput)
    {
        switch (_directionalInput)
        {
        case DirectionalInputType.Left:
            CurrentMenu.MoveLeft();
            break;

        case DirectionalInputType.Right:
            CurrentMenu.MoveRight();
            break;

        case DirectionalInputType.Down:
            CurrentMenu.MoveDown();
            break;

        case DirectionalInputType.Up:
            CurrentMenu.MoveUp();
            break;

        case DirectionalInputType.Null:

            break;
        }

        if (_directionalInput != DirectionalInputType.Null && _firstDirectionalInput)
        {
            m_menuFirstNavigationCooldownTimer.Start();
            CanMove = false;
        }
        else if (_directionalInput != DirectionalInputType.Null)
        {
            m_menuContinuedNavigationCooldownTimer.Start();
            CanMove = false;
        }
    }
示例#2
0
    private void HandleDirectionalInput()
    {
        DirectionalInputType lastDirectionalInput = m_currentDirectionalInput;

        if (InputManager.Instance.InputLeft)
        {
            m_currentDirectionalInput = DirectionalInputType.Left;
        }
        else if (InputManager.Instance.InputRight)
        {
            m_currentDirectionalInput = DirectionalInputType.Right;
        }
        else if (InputManager.Instance.InputDown)
        {
            m_currentDirectionalInput = DirectionalInputType.Down;
        }
        else if (InputManager.Instance.InputUp)
        {
            m_currentDirectionalInput = DirectionalInputType.Up;
        }
        else
        {
            m_currentDirectionalInput = DirectionalInputType.Null;
            m_menuFirstNavigationCooldownTimer.Stop();
            CanMove = true;
        }

        if (CanMove && lastDirectionalInput == DirectionalInputType.Null && lastDirectionalInput != m_currentDirectionalInput)
        {
            Move(m_currentDirectionalInput, true);
        }
        else if (CanMove)
        {
            Move(m_currentDirectionalInput, false);
        }
    }