[RESOLVIDO]Animação não funciona
5 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO]Animação não funciona
Não esta funcionando a animação, ele só se move mas não tem animação, e não achei o erro.
- Código:
using System;
using UnityEngine;
public class controles : MonoBehaviour{
private Rigidbody2D rb;
private Transform tr;
private Animator an;
private Transform vd;
private bool runing;
private bool estaChao;
private bool estaVivo;
private bool viradoDireita;
private float axis;
public float speed;
public float jump;
public float validaChao;
public float validaParede;
public LayerMask solido;
public Transform verChao;
public Transform verParede;
void Start(){
rb = GetComponent<Rigidbody2D> ();
tr = GetComponent<Transform> ();
an = GetComponent<Animator> ();
Animation ();
estaVivo = true;
viradoDireita = true;
}
void Update(){
if (estaVivo) {
estaChao = true;
if (Input.GetAxis("Horizontal") > 0 ) {
transform.Translate (Vector2.right * speed * Time.deltaTime);
transform.eulerAngles = new Vector2(0, 0);
runing = true;
}
if (Input.GetAxis("Horizontal") < 0 ) {
transform.Translate (Vector2.right * speed * Time.deltaTime);
transform.eulerAngles = new Vector2(0, 180);
runing = true;
}
if (Input.GetButtonDown ("jump") && estaChao) {
rb.AddForce (tr.up * jump);
estaChao = false;
}
}
}
void FixedUpdate(){
if (runing && !verParede) {
if (viradoDireita) {
rb.velocity = new Vector2 (speed, rb.velocity.y);
}else{
rb.velocity = new Vector2(-speed, rb.velocity.y);
}
}
}
void flip(){
Vector2 theScale = transform.localScale;
theScale.x *= -1;
transform.localScale = theScale;
}
void Animation(){
an.SetBool ("Run", (estaChao && runing));
an.SetBool ("Jump", !estaChao);
an.SetFloat ("vSpeed", rb.velocity.y);
}
void OndrawGizamosSelected(){
Gizmos.color = Color.red;
Gizmos.DrawWireSphere (verChao.position, validaChao);
Gizmos.DrawWireSphere (verParede.position, validaParede);
}
}
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
[url=https://www.dropbox.com/s/25kc26cbmqhjpxn/Sem t%c3%adtulo.png?dl=0]https://www.dropbox.com/s/25kc26cbmqhjpxn/Sem%20t%C3%ADtulo.png?dl=0[/url]
Não consegui colocar a imagem aqui
Não consegui colocar a imagem aqui
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
https://www.dropbox.com/s/25kc26cbmqhjpxn/Sem t%c3%adtulo.png?dl=0][url=https://www.dropbox.com/s/25kc26cbmqhjpxn/Sem t%C3%ADtulo.png?dl=0[/url]]https://www.dropbox.com/s/25kc26cbmqhjpxn/Sem%20t%C3%ADtulo.png?dl=0[/url[/url]MarcosSchultz escreveu:E como estão os parâmetros do Animator?
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
Cara creio que a void animation();
Voce tem que jogar no update não no start;
Voce tem que jogar no update não no start;
Zecandy- Mestre
- PONTOS : 3506
REPUTAÇÃO : 155
Idade : 42
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
Deu quase certo, agora ele fica travado na animação de correrZecandy escreveu:Cara creio que a void animation();
Voce tem que jogar no update não no start;
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
Travando como tem como enviar um video.
Zecandy- Mestre
- PONTOS : 3506
REPUTAÇÃO : 155
Idade : 42
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
Se estiver demorando entre as transições é só desativar a opção "Exit Time" na animação. E tambem, verifique se a animação esta em Loop
Re: [RESOLVIDO]Animação não funciona
Tira esse (void Animation())
e chama as animaçoes nos comando dos de correr e pulo eu faço assim e da certo
e chama as animaçoes nos comando dos de correr e pulo eu faço assim e da certo
Re: [RESOLVIDO]Animação não funciona
Já olhei isso, e esta tudo certomarcos4503 escreveu:Se estiver demorando entre as transições é só desativar a opção "Exit Time" na animação. E tambem, verifique se a animação esta em Loop
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
Continua a mesma coisaCallyde Jr escreveu:Tira esse (void Animation())
e chama as animaçoes nos comando dos de correr e pulo eu faço assim e da certo
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO]Animação não funciona
- Código:
using UnityEngine;
using System.Collections;
public class PlayerBehaviour: MonoBehaviour {
public float speedMove = 5f; // VELOCIDADE MOVIMENTO
public float jumpForce = 350f; // FORÇA DO PULO
public LayerMask groundLayers; // LAYERS CONSIDERADA CHAO
public Transform groundCheck; // OBJETO PRA DETECTAR SE TA NO CHAO, "PÉ"
public float groundRadius = 0.1f; // RAIO PARA DIZER SE O PLAYER ESTA NO CHÃO
private bool isOnGround; // ESTA NO CHÃO?
private Rigidbody2D rb; // RIGIDBODY 2D DO PLAYER
private Animator an; // ANIMATOR DO PLAYER
private bool isLookRight = true; // ESTA OLHANDO PRA DIREITA?
private bool walk;
private bool variador;
void Awake(){
rb = GetComponent<Rigidbody2D> ();
an = GetComponent<Animator> ();
}
void FixedUpdate(){
isOnGround = false;
Collider2D[] colliders = Physics2D.OverlapCircleAll (groundCheck.position,groundRadius,groundLayers);
for(int i=0;i<colliders.Length;i++){
if(colliders[i].gameObject != gameObject){
isOnGround = true;
}
}
if(isOnGround){
float direction = Input.GetAxisRaw("Horizontal");
variador = Mathf.Abs(direction)> 0;
if(variador){
walk = true;
}else{
walk = false;
}
rb.velocity = new Vector2(direction*speedMove,rb.velocity.y);
if(direction>0 && !isLookRight){
Turn();
}
else if(direction<0 && isLookRight)
{
Turn();
}
}
}
void Turn(){
isLookRight = !isLookRight;
Vector3 scale = transform.localScale;
scale.x *= -1;
transform.localScale = scale;
}
void Update(){
Animations();
if (Input.GetButtonDown ("Jump") && isOnGround) {
isOnGround = false;
rb.AddForce (Vector2.up * jumpForce);
}
}
void Animations (){
an.SetBool ("Run", (isOnGround && walk));
an.SetBool ("Idle", (isOnGround && !walk));
}
}
Consegui resolver, eu criei um variador que pega o valor absoluto da variável direction e entra em um if, usei como base um outro script que achei aqui mesmo no fórum.
Dettne- Iniciante
- PONTOS : 2672
REPUTAÇÃO : 0
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Animação
» [RESOLVIDO] Animação , Em Um Monstro ?
» [RESOLVIDO] Animação em texto
» [RESOLVIDO] Animação com mão fechada
» [RESOLVIDO] Problemas com animação
» [RESOLVIDO] Animação , Em Um Monstro ?
» [RESOLVIDO] Animação em texto
» [RESOLVIDO] Animação com mão fechada
» [RESOLVIDO] Problemas com animação
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos