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;
        }
示例#3
0
    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;
    }
示例#4
0
 void Start()
 {
     agent = GetComponent<SteeringAgent>();
     agent.RegisterSteeringBehaviour(this);
 }
示例#5
0
 void Start()
 {
     agent = GetComponent <SteeringAgent>();
     agent.RegisterSteeringBehaviour(this);
 }