Exemple #1
0
    void Update()
    {
        if (m_Input.Controller_Dropdown.value < 0)
        {
            return;
        }

        UpdateButton("Button B", B_BTN);
        UpdateButton("Button A", A_BTN);
        UpdateButton("Button Y", Y_BTN);
        UpdateButton("Button X", X_BTN);
        UpdateButton("Left Stick Button", LeftStickBTN);
        UpdateButton("Left Bumper", LeftShoulder);
        UpdateButton("Right Stick Button", RightStickBTN);
        UpdateButton("Right Bumper", RightShoulder);
        UpdateButton("Start", StartBTN);
        UpdateButton("Back", SelectBTN);


        var dpad = m_Input.GetAxis2D("DPAD");

        UpdateButton(dpad.y < -0.1f, Up);
        UpdateButton(dpad.y > 0.1f, Down);
        UpdateButton(dpad.x < -0.1f, Left);
        UpdateButton(dpad.x > 0.1f, Right);


        // Unity input uses inverted vertical sticks by default.
        var left_stick  = new Vector2(m_Input.GetAxis("Left Stick Horizontal"), -m_Input.GetAxis("Left Stick Vertical"));
        var right_stick = new Vector2(m_Input.GetAxis("Right Stick Horizontal"), -m_Input.GetAxis("Right Stick Vertical"));

        LeftStick.transform.localPosition  = left_stick * LeftStickHalf;
        RightStick.transform.localPosition = right_stick * RightStickHalf;


        var left_trigger  = MapNegativeToAbsolute(m_Input.GetAxis("Left Trigger"));
        var right_trigger = MapNegativeToAbsolute(m_Input.GetAxis("Right Trigger"));

        LeftTrigger.color    = new Color(left_trigger, 0, 0, 0.5f);
        LeftTriggerText.text = left_trigger.ToString("P0");

        RightTrigger.color    = new Color(right_trigger, 0, 0, 0.5f);
        RightTriggerText.text = right_trigger.ToString("P0");
    }