Bom dia, tarde ou boa noite!
Segui o passo a passo para fazer a refatoração dos códigos de animação, mas ela parou de funcionar e a Unity ta mostrando um erro.
NullReferenceException: Object reference not set to an instance of an object
AnimacaoPersonagem.Movimentar (System.Single valorMovimento) (at Assets/Scripts/AnimacaoPersonagem.cs:21)
ControlaJogador.Update () (at Assets/Scripts/ControlaJogador.cs:34)
Já rodei tudo e não faço ideia do que pode ser... help!
ControlaJogador.cs
private AnimacaoPersonagem animacaoJogador;
private void Start()
{
Time.timeScale = 1;
meuMovimentoJogador = GetComponent<MovimentoJogador>();
animacaoJogador = GetComponent<AnimacaoPersonagem>();
}
// Update is called once per frame
void Update()
{
float eixoX = Input.GetAxis("Horizontal");
float eixoZ = Input.GetAxis("Vertical");
direcao = new Vector3(eixoX, 0, eixoZ);
animacaoJogador.Movimentar(direcao.magnitude);
if(Vida <= 0)
{
if(Input.GetButtonDown("Fire1"))
{
SceneManager.LoadScene("motel_scene");
}
}
}
AniamcaoPersonagem.cs
private Animator meuAnimator;
void awake ()
{
meuAnimator = GetComponent<Animator>();
}
public void Atacar (bool estado)
{
meuAnimator.SetBool("Atacando", estado);
}
public void Movimentar (float valorMovimento)
{
meuAnimator.SetFloat("Movendo", valorMovimento);
}