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:
Alguém Para Dar Uma Avaliada no Meu Jogo de Terror :)
Android Swipe
Tela rosa em jogos
multiplayer
Recarregador de arms
Uno Game with Unity 3D
[____TÓPICO LIVRE____] FALE O QUE QUISER
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
Formaçao de equipe para jogo de sobrevivencia online
Skript para atravessar uma area e ir para outra cena já como personagem
MonoDevelop
[TUTORIAL] Cutscene inicial!
[____ADMINISTRADOR OFFLINE____]
Design de apartamento (interior)
//Script// pressionar botão e destruir objeto não funciona
Objeto ultrapassando Colisor
Stop Animation
Como usar uma animação de uma arma animada na Unity...
Como funciona esse script?!
[Dúvida] Movimentação com touch
Delay e ativar variavel de audio
Text to Speech ou outra sugestão
[RESOLVIDO] Como deixar sempre com dois dígitos
[RESOLVIDO] ERRO NO SISTEMA DE FOME, VIDA, STAMINA ETC... DO MARCOS
[RESOLVIDO] VOID START???
DESLIGAR E LIGAR O CARRO
[RESOLVIDO] Animação
jogo quiz 2D unity 5...
[DUVIDA] como melhorar a jogabilidade de um jogo 2D
(Dúvida) Objeto receber posição do Raycast.
Personagem em 3ª pessoa
Projeto - IMU, terror de sobrevivência em primeira pessoa (estilo silent hill)
JUMP no estilo Subwey surf
Auxilio para script de Câmera
[TUTORIAL] AI Enemy ( Jogos de terror )
Criar varias funções de mesmo nome em um script
Como Que faço Para Quando Eu Reentrar no game o PlayerPrefs restaurar os dados salvos?
[ASSET] Cama Realista 3D + Download Grátis!
[RESOLVIDO] Meu Script Sumiu!
Como colocar arvores configuradas pelo terrain?
Duvida de camera
Problema de conexão com o fórum
Brasileiros podem usar o Unity ADS?
Desenvolvimento de game PokeGen MS - Vídeo e informações
dúvida com variáveis
Câmera tipo Uncharted
Como verificar se a animação términou no animator
[TUTORIAL] Sistema COMPLETO de câmeras
Iluminação unity 5
Procuro membros para minha Equipe (Programadores, designers, etc)
Galera aki tenho um site com muitos models 3d
COMO COLOCO LANTERNA DE LED NO MEU JOGO DE BUS
DUVIDA SCRIPT DO MARCOS SELEÇÃO DE PERSONAGEM !
SOBRE "IK" INVERSE KINEMATICS
Objeto ir para raycast
Duvida como instância um game objeto com Raycast
Problema Com Virtual Buttons Help me ;-;
GALERA PRECISO DE MODELADORES ,DESIGNER E PROGAMADORES PARA A MINHA EQUIPE DE UNITY 5
sobre build run no Android
e algum bug??
Ajuda na script
[ajuda] câmera puxada
Duvida de script de controle
Não carrega próxima cena após finalizar cutscene
Duvida de script avançada
[TUTORIAL] Derrubar arvores e dropar madeiras dela
Vocês poderiam avaliar meu jogo para Android? (30mb)
Ajuda com elementos UI
Ajuda com AI
Multiplayer com photon
[PEDIDO] Tutorial de Multiplayer
procuro equipe para meu jogo de bus
Formação de equipe para jogo estilo Days Gone (Campanha , Multiplayer) , (já está em criação)
AJUDA SCRIPT LUZ UNITY 5.5
3 Armas mediavais gratis, criada por min
Hoje à(s) 3:23 pm
Hoje à(s) 3:18 pm
Hoje à(s) 3:16 pm
Hoje à(s) 3:14 pm
Hoje à(s) 3:09 pm
Hoje à(s) 3:04 pm
Hoje à(s) 2:24 pm
Hoje à(s) 2:21 pm
Hoje à(s) 1:43 pm
Hoje à(s) 12:37 pm
Hoje à(s) 4:31 am
Hoje à(s) 3:38 am
Hoje à(s) 3:01 am
Hoje à(s) 2:07 am
Hoje à(s) 12:23 am
Ontem à(s) 11:23 pm
Ontem à(s) 10:04 pm
Ontem à(s) 9:56 pm
Ontem à(s) 9:51 pm
Ontem à(s) 9:33 pm
Ontem à(s) 4:53 pm
Ontem à(s) 12:34 pm
Ontem à(s) 7:22 am
Ontem à(s) 12:05 am
Ontem à(s) 12:04 am
Qui Jan 19, 2017 10:24 pm
Qui Jan 19, 2017 5:31 pm
Qui Jan 19, 2017 4:41 pm
Qui Jan 19, 2017 2:15 pm
Qui Jan 19, 2017 1:02 pm
Qui Jan 19, 2017 12:17 pm
Qui Jan 19, 2017 11:58 am
Qui Jan 19, 2017 1:04 am
Qui Jan 19, 2017 12:35 am
Qui Jan 19, 2017 12:10 am
Qua Jan 18, 2017 10:27 pm
Qua Jan 18, 2017 10:27 pm
Qua Jan 18, 2017 9:45 pm
Qua Jan 18, 2017 9:21 pm
Qua Jan 18, 2017 7:32 pm
Qua Jan 18, 2017 6:53 pm
Qua Jan 18, 2017 5:58 pm
Qua Jan 18, 2017 5:04 pm
Qua Jan 18, 2017 4:07 pm
Qua Jan 18, 2017 2:59 pm
Qua Jan 18, 2017 2:23 pm
Qua Jan 18, 2017 2:22 pm
Qua Jan 18, 2017 6:58 am
Ter Jan 17, 2017 10:57 pm
Ter Jan 17, 2017 10:17 pm
Ter Jan 17, 2017 8:54 pm
Ter Jan 17, 2017 7:13 pm
Ter Jan 17, 2017 6:33 pm
Ter Jan 17, 2017 3:19 pm
Ter Jan 17, 2017 2:54 pm
Ter Jan 17, 2017 1:57 pm
Ter Jan 17, 2017 12:16 pm
Ter Jan 17, 2017 9:54 am
Ter Jan 17, 2017 9:46 am
Seg Jan 16, 2017 11:06 pm
Seg Jan 16, 2017 7:21 pm
Seg Jan 16, 2017 7:12 pm
Seg Jan 16, 2017 7:11 pm
Seg Jan 16, 2017 7:11 pm
Seg Jan 16, 2017 7:10 pm
Seg Jan 16, 2017 7:05 pm
Seg Jan 16, 2017 7:03 pm
Seg Jan 16, 2017 5:01 pm
Seg Jan 16, 2017 4:02 pm
Seg Jan 16, 2017 2:02 pm
Seg Jan 16, 2017 12:53 pm
Seg Jan 16, 2017 12:14 am
Dom Jan 15, 2017 8:31 pm
Dom Jan 15, 2017 8:03 pm
Dom Jan 15, 2017 7:54 pm
Moa
JailtonUnity
weslleyFx
JailtonUnity
weslleyFx
weslleyFx
weslleyFx
weslleyFx
Alerson Software
AndyShow
Alerson Software
Dayzr
John Rambo
LukkaFA
joabr
AndyShow
weslleyFx
weslleyFx
weslleyFx
weslleyFx
GustavoMaster
AndyShow
AndyShow
Joker 22
lucasfera15
GustavoMaster
GustavoMaster
Kenji Haruno
poker14k
luKkaSs
AndyShow
joabr
poker14k
artplayer
Pedro Canassa Garcia
pablo10544
LegendGames
artplayer
AndyShow
artplayer
weslleyFx
Weverton Borges da Silva
Hardencio
AndyShow
AndyShow
John Rambo
John Rambo
MonsaM
John Rambo
dstaroski
MonsaM
John Rambo
LuizFixa3D
XavezZ
lucasfera15
R R
anizioNoob
dstaroski
dstaroski
John Rambo
MarcosSchultz
MarcosSchultz
MarcosSchultz
joabr
MarcosSchultz
MarcosSchultz
marcos4503
sabbath
Callyde Jr
artplayer
Chilinger
Manawydan
Willian Wii
Pedro Canassa Garcia
MateusWTP

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 4: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 : 734
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 4:48 pm

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

GustavoMaster
Avançado
Avançado

Masculino PONTOS : 902
REPUTAÇÃO : 13
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 5: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 : 734
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 Ter Jan 19, 2016 12:10 am

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

GustavoMaster
Avançado
Avançado

Masculino PONTOS : 902
REPUTAÇÃO : 13
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 Ter Jan 19, 2016 12:54 am

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 : 734
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 Ter Jan 19, 2016 1:38 am

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 : 902
REPUTAÇÃO : 13
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 Ter Jan 19, 2016 1:54 am

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 : 734
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 4: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 : 7530
REPUTAÇÃO : 995
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 9: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 : 734
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 9:49 pm

Tenta isso
Código:

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

hellkiller
MembroAvançado

PONTOS : 1206
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 10: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 : 734
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 10: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 : 1206
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 11: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 : 734
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 3: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 : 7530
REPUTAÇÃO : 995
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 8: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 : 734
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 Qui Jan 21, 2016 12:07 am

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 : 551
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 Sab Jan 23, 2016 1:16 am

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 : 734
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 11: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 : 551
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 5: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 : 7530
REPUTAÇÃO : 995
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 4: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 : 734
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 11: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 : 1595
REPUTAÇÃO : 318
Á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 3: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 : 7530
REPUTAÇÃO : 995
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 3: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 : 551
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 3: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 : 734
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 4: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 : 1595
REPUTAÇÃO : 318
Á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 6: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 : 551
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