private void SetControllerButtonValues()
 {
     // Set the element values directly in the controller
     for (int i = 0; i < buttonValues.Length; i++)
     {
         controller.SetButtonValue(i, buttonValues[i]);
     }
 }
Exemplo n.º 2
0
    private static void OnAppleControllerInput(int id, float val1, float val2)
    {
        if (!Application.isPlaying)
        {
            return;
        }

        if (appleVirtualController == null)
        {
            return;
        }

        if (id >= 0 && id < Enum.GetNames(typeof(NCControlElementID)).Length)
        {
            //Debug.Log("Apple Controller Input! ID: " + ((NCControlElementID)id).ToString("g") + "   val1: " + val1 + "   val2: " + val2);

            NCControlElementID elemID = (NCControlElementID)id;

            switch (elemID)
            {
            case NCControlElementID.ButtonA:
                appleVirtualController.SetButtonValue(0, val2 != 0);
                break;

            case NCControlElementID.ButtonB:
                appleVirtualController.SetButtonValue(1, val2 != 0);
                break;

            case NCControlElementID.ButtonX:
                appleVirtualController.SetButtonValue(2, val2 != 0);
                break;

            case NCControlElementID.ButtonY:
                appleVirtualController.SetButtonValue(3, val2 != 0);
                break;

            case NCControlElementID.ButtonShoulderLeft:
                appleVirtualController.SetButtonValue(4, val2 != 0);
                break;

            case NCControlElementID.ButtonShoulderRight:
                appleVirtualController.SetButtonValue(5, val2 != 0);
                break;

            case NCControlElementID.ButtonTriggerLeft:
                appleVirtualController.SetButtonValue(6, val2 != 0);
                appleVirtualController.SetAxisValue(6, val1);
                break;

            case NCControlElementID.ButtonTriggerRight:
                appleVirtualController.SetButtonValue(7, val2 != 0);
                appleVirtualController.SetAxisValue(7, val2);
                break;

            case NCControlElementID.ButtonHome:
                appleVirtualController.SetButtonValue(8, val2 != 0);
                break;

            case NCControlElementID.ButtonMenu:
                appleVirtualController.SetButtonValue(9, val2 != 0);
                break;

            case NCControlElementID.ButtonOptions:
                appleVirtualController.SetButtonValue(10, val2 != 0);
                break;

            case NCControlElementID.ButtonUp:
                appleVirtualController.SetButtonValue(11, val2 != 0);
                break;

            case NCControlElementID.ButtonDown:
                appleVirtualController.SetButtonValue(12, (val2 != 0));
                break;

            case NCControlElementID.ButtonLeft:
                appleVirtualController.SetButtonValue(13, val2 != 0);
                break;

            case NCControlElementID.ButtonRight:
                appleVirtualController.SetButtonValue(14, val2 != 0);
                break;

            case NCControlElementID.ButtonThumbstickLeft:
                appleVirtualController.SetButtonValue(15, val2 != 0);
                break;

            case NCControlElementID.ButtonThumbstickRight:
                appleVirtualController.SetButtonValue(16, val2 != 0);
                break;

            case NCControlElementID.Dpad:
                appleVirtualController.SetAxisValue(0, val1);
                appleVirtualController.SetAxisValue(1, val2);
                break;

            case NCControlElementID.ThumbstickLeft:
                appleVirtualController.SetAxisValue(2, val1);
                appleVirtualController.SetAxisValue(3, val2);
                break;

            case NCControlElementID.ThumbstickRight:
                appleVirtualController.SetAxisValue(4, val1);
                appleVirtualController.SetAxisValue(5, val2);
                break;

            default:
                break;
            }
        }
    }