Example #1
0
 public void Grab()
 {
     if (state == GrabbableState.hovering)
     {
         state = GrabbableState.grabbed;
         CheckCollider();
     }
 }
Example #2
0
 private void OnTriggerExit(Collider other)
 {
     if (currentHoverinGrabber != null && state == GrabbableState.hovering)
     {
         GrabberBehaviour otherGrabber = other.gameObject.GetComponentInParent <GrabberBehaviour>();
         if (otherGrabber != null && currentHoverinGrabber == otherGrabber)
         {
             currentHoverinGrabber = null;
             state = GrabbableState.free;
         }
     }
 }
Example #3
0
 private void OnTriggerStay(Collider other)
 {
     if (state == GrabbableState.free)
     {
         var grabber = other.gameObject.GetComponentInParent <GrabberBehaviour>();
         if (grabber != null)
         {
             state = GrabbableState.hovering;
             currentHoverinGrabber = grabber;
         }
     }
 }