SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Alien Planet - Atmospheric scattering test
Unity 5 Bugado
Integração PHP e Unity
Ideia Inovadora
Duvida Animation Play não faz nada
Escolher que resoluções jogo vai ter
como usar o Lookat com o addforce do rigidibody?
[MagicaVoxel] Programa de modelagem de cenários cúbicos fácil
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
Pra que serve o [SerializeField] e por que usar ele?
Animacao2D
[____TÓPICO LIVRE____] FALE O QUE QUISER
script
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Forma uma equipe
Baixar Documentaçao Unity 3D?
Feixe de luz - melhor forma de fazer
erro sinistro
Duvida sobre o Peso do jogo?
Alquem tem alguma ideia de como fazer o Player tipo a cabeça olhar para o seu inimigo?
Cryengine 3?
Como mudar rotacao de um objeto em relacao a posicao do outro objeto
Gostaria da opinião de vocês sobre o beta da Unity
Script
[TUTORIAL] Barra de VIDA / HP contínua
[TUTORIAL] Sistema de Escada Estilo FPS
[TUTORIAL] Melhorar a estabilidade dos veículos com Wheel Collider
Guitar The Legends of Brazil
[TUTORIAL] Escolher a quantos FPS (fixos) o seu jogo deverá rodar.
Examinar
Formação de Equipe Battle of Worlds
me ajudem neste script para subir escada
Texturas
script por favor me ajudem
Números aleatorios
Tem como saber o Tamanho do Objeto?
Banco de dados Aleatorio
Procuro desenhista para jogo 2D Pixel Art (Compra)
[Dúvida] Blender erro ao aplicar osso na mesh
[resolvido]enfiar float no UItext por script
Daria para pegar as horas do computador e por no jogo?
Gerador de Characters Autodesk Online
[JOGO DE FPS MULTIPLAYER] Alguém que saiba fazer animações na Unity 5 ou no blender :D
[LANÇADO] The Dilma
Inventario
Procuro vagas em equipes [Programador]
The Dilma - O terror da Petrobrás
Ajuda Neste Script?
Teste de usuário para um jogo
Procuro Equipe de Jogos 2D
Animações de sobra
[TUTORIAL]Singleton, A melhor forma de acessar a classe!
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Mudança de FPS afetam a velocidade das coisas
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
Como criar um ranking online na Unity usando a PlayFab e o Facebook?
Problema da Conta do comerciante do developer
BUG DE VOLUME NO SCRIPT MENU DE PAUSA
controle 2D com touch ou clique do mouse
[Dúvida] MySQL. Funciona apenas no editor.
[RESOLVIDO]como acesar uma void publica pelo script e ativa-la
Active UI
Como Criar Textura De Armas
Formaçao De Equipe (FLAMEBLOOD)
Fonte Proporcional
Ativar / Desativar Varios GameObject
[Duvida] Como fazer Medkit
[RESOLVIDO]Duvida com butao UI para ativar Void
Rodando o Sul
Procuro programadores para meu projeto BR Bus
Sistema de score
Strings e quebra de texto?
Procuro programadores para meu jogo
Interação com cenário
(formação de equipe BSU 17)
Hoje à(s) 2:08 pm
Hoje à(s) 7:16 am
Hoje à(s) 5:46 am
Hoje à(s) 3:34 am
Ontem à(s) 11:57 pm
Ontem à(s) 11:55 pm
Ontem à(s) 11:46 pm
Ontem à(s) 11:46 pm
Ontem à(s) 11:36 pm
Ontem à(s) 11:31 pm
Ontem à(s) 11:30 pm
Ontem à(s) 11:24 pm
Ontem à(s) 11:11 pm
Ontem à(s) 10:58 pm
Ontem à(s) 1:32 pm
Ontem à(s) 12:01 pm
Ontem à(s) 10:53 am
Ontem à(s) 1:25 am
Ontem à(s) 1:11 am
Ontem à(s) 1:08 am
Sex Dez 02, 2016 11:59 pm
Sex Dez 02, 2016 11:20 pm
Sex Dez 02, 2016 11:15 pm
Sex Dez 02, 2016 11:10 pm
Sex Dez 02, 2016 11:09 pm
Sex Dez 02, 2016 11:08 pm
Sex Dez 02, 2016 11:02 pm
Sex Dez 02, 2016 10:58 pm
Sex Dez 02, 2016 10:52 pm
Sex Dez 02, 2016 10:50 pm
Sex Dez 02, 2016 10:04 pm
Sex Dez 02, 2016 9:12 pm
Sex Dez 02, 2016 8:53 pm
Sex Dez 02, 2016 8:49 pm
Sex Dez 02, 2016 3:14 pm
Sex Dez 02, 2016 12:46 pm
Sex Dez 02, 2016 11:53 am
Sex Dez 02, 2016 8:06 am
Qui Dez 01, 2016 11:31 pm
Qui Dez 01, 2016 10:46 pm
Qui Dez 01, 2016 7:28 pm
Qui Dez 01, 2016 6:42 pm
Qui Dez 01, 2016 5:08 pm
Qui Dez 01, 2016 5:06 pm
Qui Dez 01, 2016 4:44 pm
Qua Nov 30, 2016 11:46 pm
Qua Nov 30, 2016 11:45 pm
Qua Nov 30, 2016 11:19 pm
Ter Nov 29, 2016 8:03 pm
Ter Nov 29, 2016 7:49 pm
Ter Nov 29, 2016 12:15 pm
Ter Nov 29, 2016 10:46 am
Ter Nov 29, 2016 10:13 am
Ter Nov 29, 2016 10:08 am
Ter Nov 29, 2016 6:32 am
Ter Nov 29, 2016 6:29 am
Ter Nov 29, 2016 3:13 am
Ter Nov 29, 2016 2:51 am
Ter Nov 29, 2016 2:47 am
Ter Nov 29, 2016 2:45 am
Ter Nov 29, 2016 1:42 am
Ter Nov 29, 2016 12:44 am
Ter Nov 29, 2016 12:24 am
Seg Nov 28, 2016 10:38 pm
Seg Nov 28, 2016 10:03 pm
Seg Nov 28, 2016 10:00 pm
Seg Nov 28, 2016 6:33 pm
Seg Nov 28, 2016 5:32 pm
Seg Nov 28, 2016 5:22 pm
Seg Nov 28, 2016 3:57 pm
Seg Nov 28, 2016 3:38 pm
Seg Nov 28, 2016 1:29 pm
Seg Nov 28, 2016 1:01 pm
Seg Nov 28, 2016 8:29 am
Seg Nov 28, 2016 7:22 am
Madness
AndyShow
artplayer
Madness
vinilucas
Marc7
Dom3000
ismarspn
weslleyFx
weslleyFx
weslleyFx
weslleyFx
weslleyFx
weslleyFx
mafipt
dimmuo
dimmuo
Dom3000
Dom3000
Dom3000
Callyde Jr
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Dom3000
edumoran
dstaroski
dstaroski
Manawydan
Dom3000
artplayer
mlmattos
rafaelllsd
weslleyFx
Extreme Craft
Édipo
weslleyFx
weslleyFx
weslleyFx
weslleyFx
weslleyFx
weslleyFx
mayokota
weslleyFx
artplayer
dimmuo
Hardencio
Hardencio
Callyde Jr
Callyde Jr
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Extreme Craft
kalielson
kalielson
artplayer
leandroinforware
leandroinforware
John Rambo
Extreme Craft
WesleyLemosLeal
Kelvyn_Feitosa
Weverton Borges da Silva
leandroinforware
mafipt
dimmuo
dstaroski

Personagem não para ao fazer a animação de atirar

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

DÚVIDA Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Seg Jan 18, 2016 2:36 pm

No meu jogo, esse é o script que faz o personagem atirar :

Código:

private void Atirar(){
 if (Input.GetKey (KeyCode.X)) {

 anim.SetBool ("atirando", true);
 speed=0;
 


 } else {
 anim.SetBool ("atirando", false);
 speed=7;
 }

Quando aperto o x ele executa a animação de atirar, so que se eu apertar uma das setas ele se movimenta, mesma colocando "speed = 0" la no script.

Obs: Antes de colocar isso :

Código:

private void Atirar2(){
 if (Input.GetKey (KeyCode.C)) {
 
 anim.SetBool ("atirando para os lados", true);
 speed = 0;
 
 } else {
 anim.SetBool ("atirando para os lados", false);
 speed=7;
 }
que é para o player atirar de uma forma diferente, o atirar normal funcionava, depois que coloquei essa void do atirar diferente,da esse erro do player se movimentar enquanto faz a anim de atirar.
(Se eu apagar essa void atirar2, volta ao normal e o player executa a animação de atirar sem problemas).

Olhei o animator mas não consegui ver nenhum erro:




Tirei print das transições de Andando para Atirando.
HELP!!!!!!!

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por GustavoMaster em Seg Jan 18, 2016 2:48 pm

Vc quer que quando ele estiver andando ele n possa atirar ?

GustavoMaster
Avançado
Avançado

Masculino PONTOS : 804
REPUTAÇÃO : 9
Idade : 13
Áreas de atuação : ; )
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Seg Jan 18, 2016 3:51 pm

Não cara, quando eu aperto x o player deve executar somente a animação de atirar(que na verdade é so um sprite), nem se mover nem nada. No caso do problema, se, enquanto eu estiver apertando x, eu apertar também as setas, o player é arrastado enquanto faz a animação de atirar.



Olhai ai o video que gravei.
Ne 0:04 eu aperto x, o player deveria ficar estatico,mesmo se apertasse as setas.Deveria ficar igual em 0:010, mesmo apertando setas, o player n se move nem nada.
Esse é o problema, o player se mover se o x for apertado mesmo eu tendo definido speed = 0 no script.

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por GustavoMaster em Seg Jan 18, 2016 10:10 pm

Coloca o Script completo com o de tiro e movimentação

GustavoMaster
Avançado
Avançado

Masculino PONTOS : 804
REPUTAÇÃO : 9
Idade : 13
Áreas de atuação : ; )
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Seg Jan 18, 2016 10:54 pm

Ainda não tem o script de tiro, ja que eu ainda tenho problemas na movimentação.

Código:
using UnityEngine;
using System.Collections;

public class Humano1Controle : MonoBehaviour {
   public float speed ;
   private Animator anim;
   private Rigidbody2D rgd2;
   private BoxCollider2D colisor2D;
   private Vector2 sizeOriginal;
   void Start () {
      
      rgd2 = GetComponent<Rigidbody2D> ();
      anim = GetComponentInChildren<Animator> ();
      colisor2D = GetComponent<BoxCollider2D> ();
      sizeOriginal = new Vector2 (colisor2D.size.x, colisor2D.size.y);
   }
   
   void Update () {
      Moviment ();
      Rasteira ();
      Atirar ();
      Atirardiferente();
   

   }
   
   private void Moviment(){
      if(Input.GetAxis("Horizontal") < 0){
         transform.Translate(Vector2.right *speed*Time.deltaTime);
         anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
         transform.eulerAngles = new Vector2(0,180);
      }else
      if(Input.GetAxis("Horizontal")>0){
         transform.Translate(Vector2.right *speed*Time.deltaTime);
         anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
         transform.eulerAngles = new Vector2(0,0);
      }
   }
   
   private void Rasteira(){
      if ( Input.GetKey (KeyCode.Z)) {
         anim.SetBool ("rasteira", true);
         colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.5f);

      
      }else{
         anim.SetBool ("rasteira", false);
         colisor2D.size = sizeOriginal;

      }
   }

   private void Atirar(){
      if (Input.GetKey (KeyCode.X)) {

         anim.SetBool ("atirando", true);
         speed=0;
         colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.8f);


      } else {
         anim.SetBool ("atirando", false);
         speed=7;
      }


   }

   private void Atirardiferente(){
      if (Input.GetKey (KeyCode.C)) {
         
         anim.SetBool ("atirando para os lados", true);
         colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.8f);
         speed = 0;
         
      } else {
         anim.SetBool ("atirando para os lados", false);
         speed=7;
      }
      
      
      
      
      
      
   }





   

   }


Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por GustavoMaster em Seg Jan 18, 2016 11:38 pm

No seu animator vc tirou o hás êxito time ? VC manteve pressionado a letra "c" no video ou só deu um clique ?

GustavoMaster
Avançado
Avançado

Masculino PONTOS : 804
REPUTAÇÃO : 9
Idade : 13
Áreas de atuação : ; )
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Seg Jan 18, 2016 11:54 pm

Sim, eu tirei todos os Has Exit Time, e sim , no vídeo eu mantive o C(ou X, caso você tenha se confundido) pressionado.

edit: Resumindo o que quero: Caso o x seja pressionado, o player executa a animação de atirar e fique parado, estático, sem se mover, paradão enquanto eu estiver pressionando o x.

edit 2: ESQUECE, TODA A MOVIMENTAÇÃO AGORA BUGOU SEM EU TER MEXIDO EM NADA,NADA.
vou refazer tudo, deve ser só mais algum bug da unity.

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por MarcosSchultz em Ter Jan 19, 2016 2:41 pm

Cara, o erro é na programação...

Você tem que criar uma condição adicional usando o operador "&&", para somente poder atirar quando não está pressionando os botões dos lados

MarcosSchultz
Administrador

Masculino PONTOS : 7132
REPUTAÇÃO : 878
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Ter Jan 19, 2016 7:30 pm

De qualquer maneira , sem eu ter feito nada o animator bugou completamente,quando executo uma animação só, acaba executando todas.
Ja tinha feito o teste um tempo atras e tinha dado certo.Sem contar que o Ataque2, que é a mesma logica não bugou,quando aperto as setas o player nao se mexe.

Como uso o "&&"?

Código:

if (Input.GetKey (KeyCode.X) && ! Input.GetAxis ("Horizontal")) {
 anim.SetBool ("atirando", true);
 colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.8f);
 speed=0;
 
 
 } else {
 anim.SetBool ("atirando", false);
 speed=7;

 }

Assim?Não sei C# direito rsrs

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por hellkiller em Ter Jan 19, 2016 7:49 pm

Tenta isso
Código:

        if (Input.GetKey(KeyCode.X) && Input.GetKey("Horizontal"))
        {
        }

hellkiller
MembroAvançado

PONTOS : 1158
REPUTAÇÃO : 158
Áreas de atuação : Programação em C#,
Modelagem,
GameArt.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Ter Jan 19, 2016 8:01 pm

Da um erro e diz que Não é possivel aplicar o operador "&&" a operandos do tipo "bool" e "float".

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por hellkiller em Ter Jan 19, 2016 8:15 pm

Tenta assim e c# ou javascript?
Código:

        if (Input.GetKey(KeyCode.X) && Input.GetKey("Horizontal"))
        {
            anim.SetBool("atirando", true);
            colisor2D.size = new Vector2(sizeOriginal.x, sizeOriginal.y * 0.8f);
            speed = 0;


        }
        else
        {
            anim.SetBool("atirando", false);
            speed = 7;


hellkiller
MembroAvançado

PONTOS : 1158
REPUTAÇÃO : 158
Áreas de atuação : Programação em C#,
Modelagem,
GameArt.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Ter Jan 19, 2016 9:59 pm

Não entendi a sua pergunta, você perguntei se meu script é em c# ou javascript?
se for, é c#.

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por MarcosSchultz em Qua Jan 20, 2016 1:07 am

Claro que é possível aplicar && a operadores do tipo bool e float O.o

mande o seu código ai

MarcosSchultz
Administrador

Masculino PONTOS : 7132
REPUTAÇÃO : 878
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Qua Jan 20, 2016 6:56 pm

Código:
using UnityEngine;
using System.Collections;

public class Humano1Controle : MonoBehaviour {
  public float speed ;
  private Animator anim;
  private Rigidbody2D rgd2;
  private BoxCollider2D colisor2D;
  private Vector2 sizeOriginal;
  void Start () {
     
     rgd2 = GetComponent<Rigidbody2D> ();
     anim = GetComponentInChildren<Animator> ();
     colisor2D = GetComponent<BoxCollider2D> ();
     sizeOriginal = new Vector2 (colisor2D.size.x, colisor2D.size.y);
  }
 
  void Update () {
     Moviment ();
     Rasteira ();
     Atirar ();
     Atirardiferente();
 

  }
 
  private void Moviment(){
     if(Input.GetAxis("Horizontal") < 0){
        transform.Translate(Vector2.right *speed*Time.deltaTime);
        anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
        transform.eulerAngles = new Vector2(0,180);
     }else
     if(Input.GetAxis("Horizontal")>0){
        transform.Translate(Vector2.right *speed*Time.deltaTime);
        anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
        transform.eulerAngles = new Vector2(0,0);
     }
  }
 
  private void Rasteira(){
     if ( Input.GetKey (KeyCode.Z)) {
        anim.SetBool ("rasteira", true);
        colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.5f);

     
     }else{
        anim.SetBool ("rasteira", false);
        colisor2D.size = sizeOriginal;

     }
  }

  private void Atirar(){
    if (Input.GetKey (KeyCode.X) &&  Input.GetAxis ("Horizontal")) {
anim.SetBool ("atirando", true);
colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.8f);
speed=0;


} else {
anim.SetBool ("atirando", false);
speed=7;

}


  }

  private void Atirardiferente(){
     if (Input.GetKey (KeyCode.C)) {
       
        anim.SetBool ("atirando para os lados", true);
        colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.8f);
        speed = 0;
       
     } else {
        anim.SetBool ("atirando para os lados", false);
        speed=7;
     }
     
     
     
     
     
     
  }

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por LeoBrito em Qua Jan 20, 2016 10:07 pm

Cara nesta parte do código vc esta pedindo para executar a animação de atirar se estiver precionando uma das setas de andar.

 
Código:

private void Atirar(){
if (Input.GetKey (KeyCode.X)  &&  Input.GetAxis ("Horizontal"))   // <---------- AKI
{
anim.SetBool ("atirando", true);
...
} else {
anim.SetBool ("atirando", false);
speed=7;
}

Você pode mudar isso para

Código:

private void Atirar(){
 if (Input.GetKey (KeyCode.X)  &&  !Input.GetAxis ("Horizontal"))   // <---------- AKI
{
anim.SetBool ("atirando", true);
...
} else {
anim.SetBool ("atirando", false);
speed=7;
}

Mas se mesmo assim não der tente como esta descrito abaixo.

Crie uma variável  atirando  do  tipo  bool
e altere o valor dela na VOID atirar para false e true.

Código:

private void Atirar(){
   if (Input.GetKey (KeyCode.X)) {
       atirando  = true; // <----------
       anim.SetBool ("atirando", true);
       ...
} else {
       atirando  = false;  // <----------
       anim.SetBool ("atirando", false);
       speed=7;
  }
}

Depois ponha o código de andar dentro de outro IF .

Código:

if(atirando == false){  // <----------
   if(Input.GetAxis("Horizontal") < 0){
       transform.Translate(Vector2.right *speed*Time.deltaTime);
       anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
       transform.eulerAngles = new Vector2(0,180);
   }else
   if(Input.GetAxis("Horizontal")>0){
       transform.Translate(Vector2.right *speed*Time.deltaTime);
       anim.SetFloat("andando",Mathf.Abs(Input.GetAxis("Horizontal")));
       transform.eulerAngles = new Vector2(0,0);
   }
}


Espero ter conseguido explicar kkkk.
Post ai o resultado.

LeoBrito
Iniciante
Iniciante

Masculino PONTOS : 503
REPUTAÇÃO : 2
Idade : 35
Respeito as regras :

Ver perfil do usuário http://www.artesdaluana.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Sex Jan 22, 2016 11:16 pm

Funcionou, só que eu ainda estou com o problema do operador &&, diz que ele não pode ser aplicado em operandos do tipo bool e float. Nao sei o que fazer!!
Tem outra maneira de fazer com que determinado comando só seja ativado ao pressionar duas diferentes,sem ser com o "&&"??????????

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por LeoBrito em Sab Jan 23, 2016 9:26 am

Tem! basta vc colocar um if dentro do outro.
Exemplo:
Código:

 if (Input.GetKey (KeyCode.X)){
   if (!Input.GetAxis ("Horizontal")){
      anim.SetBool ("atirando", true);
      ...
   }
} else{
     anim.SetBool ("atirando", false);
    speed=7;
  }



Se não der poste o código e diz qual a linha que esta dando o erro assim fica mas fácil para ajudar.

LeoBrito
Iniciante
Iniciante

Masculino PONTOS : 503
REPUTAÇÃO : 2
Idade : 35
Respeito as regras :

Ver perfil do usuário http://www.artesdaluana.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por MarcosSchultz em Sab Jan 23, 2016 3:19 pm

Joaogabrielf13 escreveu:Funcionou, só que eu ainda estou com o problema do operador &&, diz que ele não pode ser aplicado em operandos do tipo bool e float. Nao sei o que fazer!!
Tem outra maneira de fazer com que determinado comando só seja ativado ao pressionar duas diferentes,sem ser com o "&&"??????????

Poste o exato código que está dando erro com os operadores "&&"

MarcosSchultz
Administrador

Masculino PONTOS : 7132
REPUTAÇÃO : 878
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Dom Jan 24, 2016 2:26 am

LeoBrito, da um erro,"Cannot implicitly convert type "float" to "bool".

Marcos:
Código:
private void Rasteira(){
 if (Input.GetKey (KeyCode.X) && Input.GetAxis ("Horizontal")) {
 anim.SetBool ("rasteira", true);
 colisor2D.size = new Vector2 (sizeOriginal.x, sizeOriginal.y * 0.5f);

 } else {
 colisor2D.size = sizeOriginal;
 anim.SetBool ("rasteira", false);

 }
 }

Tirei print do erro também:




Não sei o que ta acontecendo com a unity, vem bugando direto,tava usando a versão 5.2, ai por causa dos bugs resolvi atualizar para a 5.3.

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por RenanMSV em Dom Jan 24, 2016 9:09 am

Coloca

&& Input.GetAxis ("Horizontal") != 0)

Nao eh bug do unity. Eh simplesmente pq o GetAxys retorna um valor em float do lado que voce esta indo, pressionando...

Menor que 0 = <
Maior que 0 = >
0 = Esta parado

Do jeito que voce colocou voce esta tratando ele como se ele retornasse uma booleana

RenanMSV
Instrutor

Masculino PONTOS : 1512
REPUTAÇÃO : 309
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por MarcosSchultz em Dom Jan 24, 2016 1:11 pm

o erro é bastante simples... básicamente o Renan respondeu já...

Input.GetKey (KeyCode.X) - isto retorna uma booleana, então pode entrar sozinha no if sem problemas, más, isto:

Input.GetAxis ("Horizontal")

GetAxis retorna uma float, então precisa de alguma orientação como >, <, >=, <=, ==, !=, para comparação

MarcosSchultz
Administrador

Masculino PONTOS : 7132
REPUTAÇÃO : 878
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por LeoBrito em Dom Jan 24, 2016 1:27 pm

RenanMSV escreveu:Coloca

&& Input.GetAxis ("Horizontal") != 0)

Nao eh bug do unity. Eh simplesmente pq o GetAxys retorna um valor em float do lado que voce esta indo, pressionando...

Menor que 0 = <
Maior que 0 = >
0 = Esta parado

Do jeito que voce colocou voce esta tratando ele como se ele retornasse uma booleana

Joaogabrielf13 -> Basta seguir isso que o RenanMSV postou e resolve seu caso.

Com um detalhe! vc tem que por:   && Input.GetAxis ("Horizontal") == 0) -> pq você quer que ele atire somente quando não estiver se movendo.

Obs.: Toda vez que você pressionar as teclas para andar ele para de atirar e começa a andar.



LeoBrito
Iniciante
Iniciante

Masculino PONTOS : 503
REPUTAÇÃO : 2
Idade : 35
Respeito as regras :

Ver perfil do usuário http://www.artesdaluana.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por Joaogabrielf13 em Dom Jan 24, 2016 1:46 pm

Éé faz muito sentido rsrs. Obrigado galera, salvou o jogo e deu pra aprender um pouco.Vlw!!

Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 686
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por RenanMSV em Dom Jan 24, 2016 2:53 pm

LeoBrito escreveu:
RenanMSV escreveu:Coloca

&& Input.GetAxis ("Horizontal") != 0)

Nao eh bug do unity. Eh simplesmente pq o GetAxys retorna um valor em float do lado que voce esta indo, pressionando...

Menor que 0 = <
Maior que 0 = >
0 = Esta parado

Do jeito que voce colocou voce esta tratando ele como se ele retornasse uma booleana

Joaogabrielf13 -> Basta seguir isso que o RenanMSV postou e resolve seu caso.

Com um detalhe! vc tem que por:   && Input.GetAxis ("Horizontal") == 0) -> pq você quer que ele atire somente quando não estiver se movendo.

Obs.: Toda vez que você pressionar as teclas para andar ele para de atirar e começa a andar.




Mas ali no codigo o metodo chama Rasteira. Na rasteira precisa estar andando pra ela funcionar. '-' n era sobre atirar nao

RenanMSV
Instrutor

Masculino PONTOS : 1512
REPUTAÇÃO : 309
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Personagem não para ao fazer a animação de atirar

Mensagem por LeoBrito em Dom Jan 24, 2016 4:43 pm

RenanMSV escreveu:
LeoBrito escreveu:
RenanMSV escreveu:Coloca

&& Input.GetAxis ("Horizontal") != 0)

Nao eh bug do unity. Eh simplesmente pq o GetAxys retorna um valor em float do lado que voce esta indo, pressionando...

Menor que 0 = <
Maior que 0 = >
0 = Esta parado

Do jeito que voce colocou voce esta tratando ele como se ele retornasse uma booleana

Joaogabrielf13 -> Basta seguir isso que o RenanMSV postou e resolve seu caso.

Com um detalhe! vc tem que por:   && Input.GetAxis ("Horizontal") == 0) -> pq você quer que ele atire somente quando não estiver se movendo.

Obs.: Toda vez que você pressionar as teclas para andar ele para de atirar e começa a andar.




Mas ali no codigo o metodo chama Rasteira. Na rasteira precisa estar andando pra ela funcionar. '-' n era sobre atirar nao


Laughing Realmente! Razz peço desculpas estava tão fixado no código andar que nem notei que era problema com a rasteira kkkkkk maus aew.



LeoBrito
Iniciante
Iniciante

Masculino PONTOS : 503
REPUTAÇÃO : 2
Idade : 35
Respeito as regras :

Ver perfil do usuário http://www.artesdaluana.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum