Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        float eixoX = Input.GetAxis("Horizontal");
        float eixoZ = Input.GetAxis("Vertical");

        direcao = new Vector3(eixoX, 0, eixoZ);

        animacaoBehaviour.movimentar(direcao.magnitude);
    }
Ejemplo n.º 2
0
    private void FixedUpdate()
    {
        float distancia = Vector3.Distance(transform.position, jogador.transform.position);

        movimento.rotacionar(direcao);
        animacao.movimentar(direcao.magnitude);

        if (distancia > 15)
        {
            this.vagar();
        }
        else if (distancia > 2.5)
        {
            this.perseguir();
        }
        else
        {
            this.atacar();
        }
    }
Ejemplo n.º 3
0
    private void Update()
    {
        agente.SetDestination(jogador.position);
        animacao.movimentar(agente.velocity.magnitude);

        if (agente.hasPath)
        {
            bool proximidadeJogador = agente.remainingDistance <= agente.stoppingDistance;

            if (proximidadeJogador)
            {
                animacao.atacar(true);
                Vector3 direcao = jogador.position - transform.position;
                movimento.rotacionar(direcao);
            }
            else
            {
                animacao.atacar(false);
            }
        }
    }