void FixedUpdate()
    {
        float distancia = Vector3.Distance(transform.position, player.transform.position);

        if (distancia > 10)
        {
            Wander();
        }
        else if (distancia > 2)
        {
            direcao     = player.transform.position - transform.position;
            novaRotacao = Quaternion.LookRotation(direcao);
            Animate.Attack(false);
            Move.Move(direcao, status.speed, novaRotacao);
        }
        else
        {
            Animate.Attack(true);
        }
    }
Beispiel #2
0
    void Update()
    {
        agent.SetDestination(player.position);

        bool isWalking = agent.velocity.magnitude > 0;

        animBoss.Walk(isWalking);

        if (agent.hasPath == true)
        {
            bool nearPlayer = agent.remainingDistance <= agent.stoppingDistance;

            if (nearPlayer)
            {
                Vector3 direcao = player.position - transform.position;
                moveBoss.Rotacionar(direcao);
                animBoss.Attack(true);
            }
            else
            {
                animBoss.Attack(false);
            }
        }
    }