Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

o jogador só anda pra frente!

Ola! apos finalizar a aula de hoje o personagem fica andando apenas para frente independendo das teclas de movimentação que eu pressione w,a,s é d o meu código esta abaixo.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ControlaJogador : MonoBehaviour {

    public float velocidade = 10;
    Vector3 direcao;
    // Use this for initialization
    void Start () {

    }

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

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

        if(direcao != Vector3.zero)
        {
            GetComponent<Animator>().SetBool("Movendo", true);
        }
        else
        {
            GetComponent<Animator>().SetBool("Movendo", false);

        }

    }

     void FixedUptade()
    {
        GetComponent<Rigidbody>().MovePosition(GetComponent<Rigidbody>().position + (direcao * velocidade * Time.deltaTime));


    }
}
4 respostas

Oi, Raul, tudo bem?

No seu código tem um errinho no nome do método FixedUpdate está FixedUptade acredito ser o único erro.

Como esse método é do Unity ele tem que ter o nome correto para ser executado.

Veja se isso soluciona o problema e me avisa?

Bons estudos :)

solução

queria dizer cara vc passa a matéria muito bem nem na faculdade que fiz tive professor que explica com tanta clareza assim parabéns!

Muito obrigado, Raul. Deu certo a solução?

Espero que goste dos cursos sequenciais a este também.

Bons estudos!

Deu certo sim! era esse o problema rsrsrs as vezes acontece principalmente o ";" qualquer duvida volto a perguntar!