Пример #1
0
    /// <summary>
    /// Wrap Unity's method
    /// </summary>
    /// <param name="inputName"></param>
    /// <returns></returns>
    public static float GetAxis(string inputName, OuyaSDK.OuyaPlayer player)
    {
#if !UNITY_EDITOR && !UNITY_STANDALONE_OSX && !UNITY_STANDALONE_WIN && !UNITY_STANDALONE_LINUX
        switch (inputName)
        {
        case "LT":
            return(OuyaInputManager.getPlayerKeyState(player).m_axisLeftTrigger);

        case "RT":
            return(OuyaInputManager.getPlayerKeyState(player).m_axisRightTrigger);

        case "RX":
            return(OuyaInputManager.getPlayerKeyState(player).m_axisRightStickX);

        case "RY":
            return(OuyaInputManager.getPlayerKeyState(player).m_axisRightStickY);

        case "LX":
            return(OuyaInputManager.getPlayerKeyState(player).m_axisLeftStickX);

        case "LY":
            return(-OuyaInputManager.getPlayerKeyState(player).m_axisLeftStickY);
        }
        return(0f);
#else
        string axisName     = string.Empty;
        int    invertFactor = GetInvertedFactor(GetControllerType(player), inputName);
        switch (inputName)
        {
        case "LT":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Horizontal, AnalogTypes.LTRT);
            break;

        case "RT":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Vertical, AnalogTypes.LTRT);
            break;

        case "RX":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Horizontal, AnalogTypes.Right);
            break;

        case "RY":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Vertical, AnalogTypes.Right);
            break;

        case "LX":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Horizontal, AnalogTypes.Left);
            break;

        case "LY":
            axisName = OuyaInputManager.GetInput(player, AxisTypes.Vertical, AnalogTypes.Left);
            break;
        }
        if (!string.IsNullOrEmpty(axisName))
        {
            return(invertFactor * Input.GetAxis(axisName));
        }
        return(0f);
#endif
    }
Пример #2
0
    /// <summary>
    /// Get Devices
    /// </summary>
    /// <returns>List<Device></returns>
    public static void HandleAxisEvent(OuyaSDK.InputAxisEvent inputEvent)
    {
        switch (inputEvent.getAxisCode())
        {
        case OuyaSDK.AxisEnum.AXIS_LSTICK_X:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisLeftStickX = inputEvent.getAxis();
            break;

        case OuyaSDK.AxisEnum.AXIS_LSTICK_Y:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisLeftStickY = inputEvent.getAxis();
            break;

        case OuyaSDK.AxisEnum.AXIS_RSTICK_X:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisRightStickX = inputEvent.getAxis();
            break;

        case OuyaSDK.AxisEnum.AXIS_RSTICK_Y:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisRightStickY = inputEvent.getAxis();
            break;

        case OuyaSDK.AxisEnum.AXIS_LTRIGGER:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisLeftTrigger = inputEvent.getAxis();
            break;

        case OuyaSDK.AxisEnum.AXIS_RTRIGGER:
            OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer()).m_axisRightTrigger = inputEvent.getAxis();
            break;
        }
    }
Пример #3
0
    /// <summary>
    /// Wrap Unity's method
    /// </summary>
    /// <param name="inputName"></param>
    /// <returns></returns>
    public static bool GetButton(string inputName, OuyaSDK.OuyaPlayer player)
    {
        switch (inputName)
        {
        case "SYS":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonSystem);

        case "DPC":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonDPadCenter);

        case "DPD":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonDPadDown);

        case "DPL":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonDPadLeft);

        case "DPR":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonDPadRight);

        case "DPU":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonDPadUp);

        case "O":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonO);

        case "U":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonU);

        case "Y":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonY);

        case "A":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonA);

        case "LT":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonLT);

        case "RT":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonRT);

        case "LB":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonLB);

        case "RB":     //arbitrary name and mapping
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonRB);

        case "L3":
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonL3);

        case "R3":
            return(OuyaInputManager.getPlayerKeyState(player).m_buttonR3);
        }

        return(false);
    }
Пример #4
0
    public static void SetButton(string inputName, OuyaSDK.OuyaPlayer player, bool state)
    {
        switch (inputName)
        {
        case "SYS":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonSystem = state;
            break;

        case "DPC":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonDPadCenter = state;
            break;

        case "DPD":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonDPadDown = state;
            break;

        case "DPL":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonDPadLeft = state;
            break;

        case "DPR":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonDPadRight = state;
            break;

        case "DPU":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonDPadUp = state;
            break;

        case "O":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonO = state;
            break;

        case "U":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonU = state;
            break;

        case "Y":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonY = state;
            break;

        case "A":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonA = state;
            break;

        case "LT":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonLT = state;
            break;

        case "RT":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonRT = state;
            break;

        case "LB":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonLB = state;
            break;

        case "RB":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonRB = state;
            break;

        case "L3":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonL3 = state;
            break;

        case "R3":     //arbitrary name and mapping
            OuyaInputManager.getPlayerKeyState(player).m_buttonR3 = state;
            break;
        }
    }
Пример #5
0
    public static void HandleButtonEvent(OuyaSDK.InputButtonEvent inputEvent)
    {
        OuyaInputManager.OuyaKeyState keyState = OuyaInputManager.getPlayerKeyState(inputEvent.getPlayer());
        if (null == keyState)
        {
            return;
        }

        switch (inputEvent.getKeyAction())
        {
        case OuyaSDK.InputAction.KeyDown:
        case OuyaSDK.InputAction.KeyUp:
            switch (inputEvent.getKeyCode())
            {
            case OuyaSDK.KeyEnum.BUTTON_O:
                keyState.m_buttonO = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_U:
                keyState.m_buttonU = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_Y:
                keyState.m_buttonY = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_A:
                keyState.m_buttonA = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_LB:
                keyState.m_buttonLB = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_LT:
                keyState.m_buttonLT = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_L3:
                keyState.m_buttonL3 = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_RB:
                keyState.m_buttonRB = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_RT:
                keyState.m_buttonRT = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_R3:
                keyState.m_buttonR3 = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_SYSTEM:
                keyState.m_buttonSystem = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN:
                keyState.m_buttonDPadDown = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT:
                keyState.m_buttonDPadLeft = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT:
                keyState.m_buttonDPadRight = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            case OuyaSDK.KeyEnum.BUTTON_DPAD_UP:
                keyState.m_buttonDPadUp = inputEvent.getKeyAction() == OuyaSDK.InputAction.KeyDown;
                break;

            default:
                return;
            }
            OuyaButtonEvent.buttonPressEvent(inputEvent.getPlayer(), inputEvent.getKeyCode(), inputEvent.getKeyAction());
            break;
        }
    }