chamando animaçao depois de um tempo
3 participantes
Página 1 de 1
chamando animaçao depois de um tempo
olá galera preciso chamar uma animaçao depois de um tempo mais ta dando este erro;
NullReferenceException: Object reference not set to an instance of an object
Zumbi0.Update () (at Assets/Script/ScriptZumbi/Zumbi0.cs:41)
NullReferenceException: Object reference not set to an instance of an object
Zumbi0.Update () (at Assets/Script/ScriptZumbi/Zumbi0.cs:41)
- Código:
using UnityEngine;
using System.Collections;
public class Zumbi0 : MonoBehaviour
{
public static Animator anim;
public GameObject zumbi;
float dirX;
[SerializeField]
public float moveSpeed = 3f;
private Rigidbody rb;
public ool facingRight = false;
private Vector3 localScale;
public bool Andando;
public float tempoNascimento;
//public bool nascendo = true;
// METODOS
private void Start()
{
anim = zumbi.GetComponent<Animator>();
localScale = transform.localScale;
rb = GetComponent<Rigidbody>();
}
private void Update()
{
if (tempoNascimento > 0)
{
tempoNascimento -= Time.deltaTime;
}
if (tempoNascimento <= 0)
{
Andando = true;
anim.SetBool("andando"); // erro nesta linha
if (transform.position.x < -16f)
dirX = 1f;
else if (transform.position.x > 16f)
dirX = -1f;
}
}
private void FixedUpdate()
{
rb.velocity = new Vector2(dirX * moveSpeed, rb.velocity.y);
}
private void LateUpdate()
{
CheckWhereToFace();
}
private void CheckWhereToFace()
{
if (dirX > 0)
facingRight = true;
else if (dirX < 0)
facingRight = false;
if (((facingRight) && (localScale.x < 0)) || ((!facingRight) && (localScale.x > 0)))
localScale.x *= -1;
transform.localScale = localScale;
}
}
Última edição por Magnatah em Sex Nov 29, 2019 12:04 pm, editado 1 vez(es) (Motivo da edição : Coloque o Script Na Área de Scripts.)
teyroberto1- Iniciante
- PONTOS : 2868
REPUTAÇÃO : 0
Respeito as regras :
Re: chamando animaçao depois de um tempo
* Use a Caixa de "Scripts", para deixar mais Organizado o Código e Facilitar a Leitura.
* Eu Corrigir o "Awake" Pois No Seu Código Estava "Awack".
Primeiro Vê se a Variável "zumbi" Não está nula, Depois Verifica No Animator para ver se existe o parâmetro "andando".
* Eu Corrigir o "Awake" Pois No Seu Código Estava "Awack".
Primeiro Vê se a Variável "zumbi" Não está nula, Depois Verifica No Animator para ver se existe o parâmetro "andando".
Magnatah- Instrutor
- PONTOS : 3551
REPUTAÇÃO : 209
Idade : 24
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras :
Re: chamando animaçao depois de um tempo
teyroberto1, o que faltou foi um valor boleano de pois de "andando"
Você pode colocar um true:
ou então já que a variável Andando se torna verdadeira depois de um tempo, você usa:
Você pode colocar um true:
- Código:
anim.SetBool("andando", true);
ou então já que a variável Andando se torna verdadeira depois de um tempo, você usa:
- Código:
anim.SetBool("andando", Andando);
Flávio- MembroAvançado
- PONTOS : 2834
REPUTAÇÃO : 29
Áreas de atuação : Aprendizagem em:
Programação C#;
Pixelart
Respeito as regras :
Tópicos semelhantes
» Alguem me ajuda, minha animaçao depois de um tempo congela
» Chamando animação por script
» Ativar GAMEOBJECT depois de um TEMPO X
» O jogo acaba depois de um determinado tempo
» O jogo acaba depois de um determinado tempo
» Chamando animação por script
» Ativar GAMEOBJECT depois de um TEMPO X
» O jogo acaba depois de um determinado tempo
» O jogo acaba depois de um determinado tempo
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos