/// <summary> /// When <see cref="AIMSteeringBehaviour.PrepareEvaluation"/> is called, this method is used in order to /// transfer the data from <see cref="Target"/> or <see cref="TargetPosition"/> to <see /// cref="AIMPerceptBehaviour{T}.GameObjects"/>. /// </summary> public override void PrepareEvaluation() { if (FilteredEnvironments.Count != 0) { FilteredEnvironments.Clear(); } if (GameObjects.Count == 1) { GameObjects[0] = Target; } else { GameObjects.Clear(); GameObjects.Add(Target); } base.PrepareEvaluation(); if (Target == null) { PerceptBehaviour.Percepts[0].Position = TargetPosition; PerceptBehaviour.Percepts[0].Active = true; PerceptBehaviour.Percepts[0].Significance = 1f; } }
/// <summary> /// This method is used in order to transfer the data from <see cref="Target"/> to <see /// cref="AIMPerceptBehaviour{T}.GameObjects"/>. Afterwards, <see /// cref="AIMSteeringBehaviour.PrepareEvaluation"/> is called. /// </summary> public override void PrepareEvaluation() { if (FilteredEnvironments.Count != 0) { FilteredEnvironments.Clear(); } if (GameObjects.Count == 1) { GameObjects[0] = Target; } else { GameObjects.Clear(); GameObjects.Add(Target); } base.PrepareEvaluation(); }