public override bool CanSelect(XRBaseInteractable interactable) { SocketTargetObject socketTarget = interactable.GetComponent <SocketTargetObject>(); if (socketTarget == null) { return(false); } XRGrabbableObject grabInteractable = (interactable as XRGrabbableObject); if (grabInteractable == null) { return(false); } return(base.CanSelect(interactable) && (socketTarget.SocketType == AcceptedType) && ((isAttachedByOnlyGrab) ? grabInteractable.CanSocketed() : true)); }
public override bool CanSelect(XRBaseInteractable interactable) { SocketTargetObject socketTarget = interactable.GetComponent <SocketTargetObject>(); if (socketTarget == null) { return(false); } XRGrabbableObject grabInteractable = (interactable as XRGrabbableObject); if (grabInteractable == null) { return(false); } return(base.CanSelect(interactable) && socketTarget.SocketType == CoinType && grabInteractable.CanSocketed() && interactable.isSelected == false && Coin == null); }