private void OnHandSelectExit(XRBaseInteractor interactor) { if (interactor is XRHandInteractor handInteractor) { this.handInteractor = null; } }
private void OnHandSelectEnter(XRBaseInteractor interactor) { if (interactor is XRHandInteractor handInteractor) { this.handInteractor = handInteractor; } }
protected override void OnHoverEnter(XRBaseInteractable interactable) { base.OnHoverEnter(interactable); if (interactable is Arrow arrow) { XRHandInteractor hand = arrow.handInteractor; // Dettach Arrow from hand hand.OnSelectExit(arrow); arrow.OnSelectExit(hand); // Attach Arrow to Notch Socket OnSelectEnter(arrow); arrow.OnSelectEnter(this); // Attach Hand to Puller puller.Attach(hand); hand.OnSelectEnter(puller); } }