private void HandleReceiverMissed() { if (currentTarget != null) { // Stop interacting with current target currentTarget.NotifyInteractionEnd(); currentTarget = null; } }
private void HandleReceiverFound(UserActionReceiver receiver) { // Check whether we're already interacting with something if (currentTarget != null) { if (currentTarget == receiver) { // Exit early if we're already interacting with this receiver return; } else { // Otherwise, stop interacting with the current target currentTarget.NotifyInteractionEnd(); } } // Start interacting with a new target currentTarget = receiver; receiver.NotifyInteractionStart(); }
public virtual void Start() { UserActions = gameObject.GetOrAdd <UserActionReceiver>(); }