/// <summary> /// Update the behavior. /// </summary> /// <param name="manager">The steering manager.</param> /// <param name="actor">The actor being updated.</param> /// <param name="dt">The time since the last update, in seconds. /// </param> /// <returns>The steering object.</returns> public override Steering Update(SteeringManager manager, Actor actor, float dt) { int count = 0; Vector3 avg = Vector3.zero; foreach (Actor f in Flock.Members) { if (base.IsAffecting(actor, f)) { avg += f.Position; count++; } } target.Point = count > 0 ? avg / count : avg; return(seeker.Update(manager, actor, dt)); }
void Update() { seekBehaviour.Update(); persuitBehaviour.Update(); UpdatePhysics(); }