Esempio n. 1
0
    void Awake()
    {
        if (_instance != null && _instance != this)
        {
            Destroy(this.gameObject);
            return;
        }
        _instance = this;

        OnHoverEventHandler leftHover  = leftController.GetComponent <OnHoverEventHandler>();
        OnHoverEventHandler rightHover = rightController.GetComponent <OnHoverEventHandler>();

        LeftGripHandler.OnValueChange += (controller, value) =>
        {
            if (value != leftVal)
            {
                if (value > 0.5f != leftVal > 0.5f)
                {
                    if (value > 0.5f)
                    {
                        OnGrabHold(controller);
                    }
                    else
                    {
                        OnGrabRelease(controller);
                    }
                }
                leftVal = value;
            }
        };

        RightGripHandler.OnValueChange += (controller, value) =>
        {
            if (value != rightVal)
            {
                if (value > 0.5f != rightVal > 0.5f)
                {
                    if (value > 0.5f)
                    {
                        OnGrabHold(controller);
                    }
                    else
                    {
                        OnGrabRelease(controller);
                    }
                }
                rightVal = value;
            }
        };
        source = GetComponent <AudioSource>();

        multiGrabButton.OnButtonDown += (c) =>
        {
            if (grab == GrabState.None)
            {
                MultiGrab = !MultiGrab;
            }
            if (MultiGrab)
            {
                source.PlayOneShot(multiGrabClip);
            }
            else
            {
                source.PlayOneShot(singleGrabClip);
            }
        };
    }
 private void Awake()
 {
     onHoverHandler = GetComponent <OnHoverEventHandler>();
 }