public override void OnTriggerExit(RangeObjectPhysicsTriggerInfo PhysicsTriggerInfo) { if (OnTriggerExitAction != null) { OnTriggerExitAction.Invoke(PhysicsTriggerInfo.OtherInteractiveObject); } }
protected override void OnTriggerExitSuccess(RangeObjectPhysicsTriggerInfo RangeObjectPhysicsTriggerInfo) { if (OnTriggerExitSuccessAction != null) { OnTriggerExitSuccessAction.Invoke(RangeObjectPhysicsTriggerInfo.OtherInteractiveObject); } }
public sealed override void OnTriggerEnter(RangeObjectPhysicsTriggerInfo PhysicsTriggerInfo) { var rangeIntersectionCalculator = new RangeIntersectionCalculator(associatedRangeObject, PhysicsTriggerInfo.OtherInteractiveObject); intersectionCalculators.Add(rangeIntersectionCalculator); intersectionCalculatorsIndexedByTrackedInteractiveObject[PhysicsTriggerInfo.OtherInteractiveObject] = rangeIntersectionCalculator; OnTriggerEnterSuccess(PhysicsTriggerInfo); }
public sealed override void OnTriggerExit(RangeObjectPhysicsTriggerInfo PhysicsTriggerInfo) { var rangeIntersectionCalculator = intersectionCalculatorsIndexedByTrackedInteractiveObject[PhysicsTriggerInfo.OtherInteractiveObject]; if (rangeIntersectionCalculator.IsInside) { justTriggerExitedCalculators.Add(rangeIntersectionCalculator); justTriggerExitedCalculatorsIndexedByTrackedInteractiveObject.Add(PhysicsTriggerInfo.OtherInteractiveObject, rangeIntersectionCalculator); } intersectionCalculators.Remove(rangeIntersectionCalculator); intersectionCalculatorsIndexedByTrackedInteractiveObject.Remove(PhysicsTriggerInfo.OtherInteractiveObject); OnTriggerExitSuccess(PhysicsTriggerInfo); }
public void OnTriggerExit(Collider other) { InteractiveObjectV2Manager.Get().InteractiveObjectsIndexedByLogicCollider.TryGetValue(other, out CoreInteractiveObject OtherInteractiveObject); if (OtherInteractiveObject != null && ((this.AssociatedInteractiveObject != null && OtherInteractiveObject != this.AssociatedInteractiveObject) || this.AssociatedInteractiveObject == null)) { this.CurrentlyTrackedColliders.Remove(other); var RangeObjectPhysicsTriggerInfo = new RangeObjectPhysicsTriggerInfo { Other = other, OtherInteractiveObject = OtherInteractiveObject }; for (var i = 0; i < this.PhysicsEventListeners.Count; i++) { if (this.PhysicsEventListeners[i].ColliderSelectionGuard(RangeObjectPhysicsTriggerInfo)) { this.PhysicsEventListeners[i].OnTriggerExit(RangeObjectPhysicsTriggerInfo); } } } }
public override bool ColliderSelectionGuard(RangeObjectPhysicsTriggerInfo RangeObjectPhysicsTriggerInfo) { return(this.SelectionGuard.Compare(RangeObjectPhysicsTriggerInfo.OtherInteractiveObject.InteractiveObjectTag)); }
public override void OnTriggerExit(RangeObjectPhysicsTriggerInfo PhysicsTriggerInfo) { this.AssociatedObstacleListener.RemoveNearSquareObstacle((ObstacleInteractiveObject)PhysicsTriggerInfo.OtherInteractiveObject); }
protected virtual void OnTriggerExitSuccess(RangeObjectPhysicsTriggerInfo RangeObjectPhysicsTriggerInfo) { }
public virtual bool ColliderSelectionGuard(RangeObjectPhysicsTriggerInfo RangeObjectPhysicsTriggerInfo) { return(true); }
public virtual void OnTriggerExit(RangeObjectPhysicsTriggerInfo PhysicsTriggerInfo) { }