private void HandleGrabTriggered() { if (!grabManager.HasActiveGrabbable() && rangedGrabDetector.HasActiveRangedGrabTarget()) { activeRangedGrabTarget = rangedGrabDetector.ActiveRangedGrabTarget; } }
private void Update() { if (grabManager.HasActiveGrabbable()) { return; } if (Physics.Raycast(new Ray(transform.position, transform.forward), out var hit, detectionRange, rangedGrabZoneLayer)) { var rangedGrabTarget = hit.collider.GetComponent <RangedGrabTarget>(); if (rangedGrabTarget != null && rangedGrabTarget != ActiveRangedGrabTarget) { if (ActiveRangedGrabTarget != null) { ActiveRangedGrabTarget.Untarget(); } ActiveRangedGrabTarget = rangedGrabTarget; ActiveRangedGrabTarget.Target(); } }