Example #1
0
        /* protected virtual void ToggleControllerVisibility(bool visible)
         * {
         *   if (grabbedObject != null)
         *   {
         *       ///[Obsolete]
         #pragma warning disable 0618
         *       VRTK_InteractControllerAppearance[] controllerAppearanceScript = grabbedObject.GetComponentsInParent<VRTK_InteractControllerAppearance>(true);
         #pragma warning restore 0618
         *       if (controllerAppearanceScript.Length > 0)
         *       {
         *           controllerAppearanceScript[0].ToggleControllerOnGrab(visible, controllerReference.model, grabbedObject);
         *       }
         *   }
         *   else if (visible)
         *   {
         *       VRTK_ObjectAppearance.SetRendererVisible(controllerReference.model, grabbedObject);
         *   }
         * } */

        protected virtual void InitUsedObject()
        {
            usedObject = (interactTongTouch != null ? interactTongTouch.GetTouchedObject() : null);
            if (usedObject != null)
            {
                OnControllerStartUseInteractableObject(interactTongTouch.SetControllerInteractEvent(usedObject));
                VRTK_InteractableObject usedObjectScript = usedObject.GetComponent <VRTK_InteractableObject>();
                ChooseUseSequence(usedObjectScript);
                // ToggleControllerVisibility(false);
                OnControllerUseInteractableObject(interactTongTouch.SetControllerInteractEvent(usedObject));
            }
        }
 private void UseInteractedObject(GameObject touchedObject)
 {
     if ((usingObject == null || usingObject != touchedObject) && IsObjectUsable(touchedObject))
     {
         usingObject = touchedObject;
         OnControllerUseInteractableObject(interactTouch.SetControllerInteractEvent(usingObject));
         usingObject.GetComponent <VRTK_InteractableObject>().StartUsing(this.gameObject);
         if (hideControllerOnUse)
         {
             Invoke("HideController", hideControllerDelay);
         }
         usingObject.GetComponent <VRTK_InteractableObject>().ToggleHighlight(false);
     }
 }
 private void InitGrabbedObject()
 {
     grabbedObject = interactTouch.GetTouchedObject();
     OnControllerGrabInteractableObject(interactTouch.SetControllerInteractEvent(grabbedObject));
     grabbedObject.GetComponent <VRTK_InteractableObject>().Grabbed(this.gameObject);
     grabbedObject.GetComponent <VRTK_InteractableObject>().ZeroVelocity();
     if (grabbedObject)
     {
         grabbedObject.GetComponent <VRTK_InteractableObject>().ToggleHighlight(false);
     }
     if (hideControllerOnGrab)
     {
         Invoke("HideController", hideControllerDelay);
     }
 }