public override Vector2 GetVelocity() { if (DefaultToPlayerTarget) { TargetAgent = TargetAgent ?? GameObject.Find("Player 1").GetComponent <SteeringAgent>(); } float t = Vector3.Distance(transform.position, TargetAgent.transform.position) / TargetAgent.MaxVelocity; Vector2 targetPoint = (Vector2)TargetAgent.transform.position + TargetAgent.CurrentVelocity * t; return(((targetPoint - (Vector2)transform.position).normalized * agent.MaxVelocity) - agent.CurrentVelocity); }
public override Vector2 GetVelocity() { if (DefaultToPlayerTarget) { TargetAgent = TargetAgent ?? GameObject.Find("Player 1").GetComponent<SteeringAgent>(); } float t = Vector3.Distance(transform.position, TargetAgent.transform.position) / TargetAgent.MaxVelocity; Vector2 targetPoint = (Vector2)TargetAgent.transform.position + TargetAgent.CurrentVelocity * t; return ((targetPoint - (Vector2)transform.position).normalized * agent.MaxVelocity) - agent.CurrentVelocity; }
void setupSeek() { myAgent = GetComponent <Steer2D.SteeringAgent> (); myAgent.CanSteer = false; seekController = GetComponent <Steer2D.Seek> (); seekController.SeekTarget = playerMoose.gameObject.transform; seekController.enabled = false; fleeController = GetComponent <Steer2D.Flee> (); fleeController.fleeTargetPoint = playerMoose.gameObject.transform; fleeController.FleeRadius = minDistanceToPlayer; fleeController.enabled = false; }
void Start() { agent = GetComponent<SteeringAgent>(); agent.RegisterSteeringBehaviour(this); }
void Start() { agent = GetComponent <SteeringAgent>(); agent.RegisterSteeringBehaviour(this); }