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:
COMO POSSO FAZER UMA FÍSICA PARA MOTOS NO UNITY?
ANIMAÇÃO DA ARMA
Como Atacar usando uma espada na Mão!!
Inimigo perder vida
Batalha de Canhão
[TUTORIAL] Como programar um VOLANTE para veículos
AGRADECIMENTOS <3 <3
AGRADECIMENTOS
JOGO DE SOBREVIVÊNCIA (Iniciantes)
[____TÓPICO LIVRE____] FALE O QUE QUISER
VIRTUAL VOID
portais ajuda
jogo 3D como fazer o personagem...
[TUTORIAL] Objeto flutuar como se estivesse no espaço ou na água
Material
Previsão de destino com Rigidbody.AddForce (Jogo de Futebol)
Ajuda com scripts
[Modelo 3D]Unity Interior 3D Estilo De Terror + Download Grátis
FÍSICA DE UM CARRO PARA JOGO EM 2D
Fazer objeto preview andar de gridsize em gridsize
Acionar funções com button ?
-- [ COMO FAÇO PARA DESATIVAR UM UI DEPOIS DE +/-, 3 SEGUNDOS ? ] --
FORMAÇÃO DE EQUIPE - JOGO Puzzle/Plataforma
Home Simulator 2017 (Estilo The Sims em 1ª Pessoa) (Download Grátis) v1.0.2
Problema no checkpoint
Photon Network
IA zumbie veloz de mais
sistema de Entrar/Sair de veículos em Network (Photon Unity Networking)
Raycast Sol
[Script] Sistema de headshot estilo sniper elite [BÁSICO]
Foice gigante
Meus modelos 3D em fase de experimento
SITE MODELOS 3D PARA USO COMERCIAL
Instanciar objetos aonde mira
Fazer o player abrir caixas
Rotaçao de um objeto e paralizaçao de seu "filho" na hierarquia(Unity 2D)
ATUALIZAÇÃO - Joguem meu jogo [Aircraft - Space Guardian] Please !!
meu jogo feito na unity
Como otimizar meu game para android?
[RESOLVIDO] INSTANCIAR PARTICULAS
Como fazer o canvas se ajusta com o tamanho da tela?
Destruir objeto depois da animação
Sistema de marcha de carro
(Duvida) Camera Seguir Player...
[DUVIDA] "encostar" em um GameObject e Tomar Dano
TOP SECRET - Programador iniciante com experiencia em 2D
Dúvida sobre multiplayer!
PARTICULAS PLAY/STOP
ABRIR E FECHAR PORTA!
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Criação de uma mensagem notificação em objeto 3d no unity
Fazer a camera seguir o personagem porem quando ela chegar na parede ela pare de se movimenta
Tocar som ao andar.
Verificar se é a primeira vez que joga
COMO POSSO FAZER O INIMIGO MORRER COM TIRO?
Unity Microfone
OBJETO GIRAR QUANDO ARRASTAR O MOUSE
disolver/ desintegrar um objeto
BARRINHA PARA REBAIXAR O CARRO!
Chamar Metodo
Gerador de códigos
Duvida sobre patrulha aleatória
[TUTORIAL] Ligar e Desligar Lanterna
[TUTORIAL] ARMA NO UNITY 3D
SOM DO TIRO
Como usar uma animação de uma arma animada na Unity...
[Tutorial] Porta ativada por alavanca
MIRA PARA JOGO DE FPS ESTILO CSGO
Game Resistência
Parede ocas
Modificar uma barrinha!
[Quase Pronto] Survival Block. Testem e mandem os bugs pra mim.
[ME AJUDA] O player não se movimenta...
SIRENE ESTILO POLÍCIA MILITAR
Movimentaçao player
Cena Loading para carregar proximo Level
MUDAR FLOAT NO FIM DE UMA ANIMAÇÃO
RagDoll + Download Free -- feito por um gringo
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
[AJUDA] Cronometro
[PEDIDO] Designers ou Entendedores (Capa,Menu e ToolTip) 3 Imagens
[RESOLVIDO] Publicando Apk Parte 2
[TUTORIAL] IA Simples
[TUTORIAL] Ajustar o Brilho do LensFlare de Acordo com a Distância
CONTROLE ARCADE PARA JOGO DE CORRIDA
[TUTORIAL] IA Simples Parte 2 (Atirar)
[DEMO] Survival Block
Aprimoramento IA Inimiga
[RESOLVIDO] Camera Collider
Todos os inimigos morrem
Canal de tutoriais android
Area Para modeladores
Inimigo ao seguir flutua [ajuda]
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
Demo de jogo para testarem...
[TUTORIAL] Fazer um VOLANTE com UI, para Android
[DUVIDA] Como destruir um GameObject (cubo etc...) sem destruir seus "afilhados"
[Duvida] Como fazer uma luz se desativar ao ficar longe dela
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Hoje à(s) 10:58 pm
Hoje à(s) 10:57 pm
Hoje à(s) 10:53 pm
Hoje à(s) 10:19 pm
Hoje à(s) 9:13 pm
Hoje à(s) 8:24 pm
Hoje à(s) 7:27 pm
Hoje à(s) 7:03 pm
Hoje à(s) 5:57 pm
Hoje à(s) 4:41 pm
Hoje à(s) 4:19 pm
Hoje à(s) 2:19 pm
Hoje à(s) 1:21 pm
Hoje à(s) 1:17 pm
Hoje à(s) 1:10 pm
Hoje à(s) 12:34 am
Ontem à(s) 11:46 pm
Ontem à(s) 10:55 pm
Ontem à(s) 10:29 pm
Ontem à(s) 7:39 pm
Ontem à(s) 6:54 pm
Ontem à(s) 6:45 pm
Ontem à(s) 5:44 pm
Ontem à(s) 5:29 pm
Ontem à(s) 5:14 pm
Ontem à(s) 5:02 pm
Ontem à(s) 2:02 pm
Ontem à(s) 1:49 pm
Ontem à(s) 1:40 pm
Ontem à(s) 1:38 pm
Ontem à(s) 12:00 pm
Ontem à(s) 12:00 am
Seg Mar 27, 2017 11:46 pm
Seg Mar 27, 2017 10:30 pm
Seg Mar 27, 2017 10:05 pm
Seg Mar 27, 2017 8:52 pm
Seg Mar 27, 2017 8:01 pm
Seg Mar 27, 2017 7:32 pm
Seg Mar 27, 2017 6:33 pm
Seg Mar 27, 2017 3:57 pm
Seg Mar 27, 2017 3:39 pm
Seg Mar 27, 2017 1:42 pm
Seg Mar 27, 2017 12:13 pm
Seg Mar 27, 2017 6:41 am
Dom Mar 26, 2017 7:04 pm
Dom Mar 26, 2017 1:58 pm
Dom Mar 26, 2017 1:34 pm
Dom Mar 26, 2017 1:13 pm
Dom Mar 26, 2017 10:43 am
Dom Mar 26, 2017 1:37 am
Dom Mar 26, 2017 12:53 am
Dom Mar 26, 2017 12:52 am
Dom Mar 26, 2017 12:49 am
Dom Mar 26, 2017 12:46 am
Dom Mar 26, 2017 12:45 am
Dom Mar 26, 2017 12:34 am
Dom Mar 26, 2017 12:30 am
Dom Mar 26, 2017 12:20 am
Dom Mar 26, 2017 12:15 am
Dom Mar 26, 2017 12:05 am
Sab Mar 25, 2017 11:59 pm
Sab Mar 25, 2017 11:58 pm
Sab Mar 25, 2017 8:59 pm
Sab Mar 25, 2017 6:50 pm
Sab Mar 25, 2017 3:37 pm
Sab Mar 25, 2017 1:51 am
Sab Mar 25, 2017 1:31 am
Sex Mar 24, 2017 8:54 pm
Sex Mar 24, 2017 8:05 pm
Sex Mar 24, 2017 7:43 pm
Sex Mar 24, 2017 7:18 pm
Sex Mar 24, 2017 6:52 pm
Sex Mar 24, 2017 6:48 pm
Sex Mar 24, 2017 3:46 pm
Sex Mar 24, 2017 1:50 pm
Sex Mar 24, 2017 12:29 pm
Qui Mar 23, 2017 6:55 pm
Qui Mar 23, 2017 4:50 pm
Qui Mar 23, 2017 4:38 pm
Qui Mar 23, 2017 4:33 pm
Qui Mar 23, 2017 12:46 pm
Qui Mar 23, 2017 8:56 am
Qua Mar 22, 2017 7:47 pm
Qua Mar 22, 2017 7:35 pm
Qua Mar 22, 2017 7:30 pm
Qua Mar 22, 2017 3:28 pm
Ter Mar 21, 2017 11:50 pm
Ter Mar 21, 2017 10:14 pm
Ter Mar 21, 2017 6:08 pm
Ter Mar 21, 2017 5:00 pm
Ter Mar 21, 2017 3:22 pm
Ter Mar 21, 2017 3:08 pm
Ter Mar 21, 2017 2:13 pm
Ter Mar 21, 2017 10:53 am
Ter Mar 21, 2017 10:13 am
Ter Mar 21, 2017 12:26 am
Ter Mar 21, 2017 12:10 am
Ter Mar 21, 2017 12:09 am
Ter Mar 21, 2017 12:05 am
Gabriel César O
Gabriel César O
PauloFR
willtuck
PauloFR
HeF Soft
Gabriel César O
Junim
MikaelSteam
heliab125
weslleyFx
bielmol
rafaelllsd
rafaelllsd
rafaelllsd
artplayer
willtuck
MateusWTP
Gabriel César O
hackernew404
wender
wender
MikaelSteam
zZAndersonZz
Jogos mini
wender
Callyde Jr
LegendGames
lucasfera15
dstaroski
Mic4el
joabr
joabr
hackernew404
rafaelllsd
niao
Junim
hackernew404
PauloFR
Junim
Callyde Jr
rafaelllsd
PauloFR
Édipo
DuViDoSo34
masterjohn12
artplayer
Junim
Gabriel César O
Atiradogamer
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
wender
MarcosSchultz
MarcosSchultz
MarcosSchultz
MateusWTP
Gabriel César O
Gabriel César O
Sheyk
PauloFR
Gabriel César O
Weverton Borges da Silva
maikonluis
HeF Software
Junim
Junim
wender
bravoent
Marc7
rafaelllsd
MateusWTP
Gabriel César O
Gabriel César O
Madness
Paizudo
Gabriel César O
AnderGames
Gabriel César O
Matrirxp
rafaelllsd
Matrirxp
ffabim
rafaelllsd
MikaelSteam
PauloFR
bravoent
DuViDoSo34
Édipo
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz

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!!!!!!!
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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 ?
avatar
GustavoMaster
Avançado
Avançado

Masculino PONTOS : 978
REPUTAÇÃO : 14
Idade : 14
Á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.
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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
avatar
GustavoMaster
Avançado
Avançado

Masculino PONTOS : 978
REPUTAÇÃO : 14
Idade : 14
Á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;
      }
      
      
      
      
      
      
   }





   

   }

avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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 ?
avatar
GustavoMaster
Avançado
Avançado

Masculino PONTOS : 978
REPUTAÇÃO : 14
Idade : 14
Á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.
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8132
REPUTAÇÃO : 1146
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
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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"))
        {
        }
avatar
hellkiller
Mestre
Mestre

PONTOS : 1276
REPUTAÇÃO : 160
Á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".
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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;

avatar
hellkiller
Mestre
Mestre

PONTOS : 1276
REPUTAÇÃO : 160
Á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#.
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8132
REPUTAÇÃO : 1146
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;
     }
     
     
     
     
     
     
  }
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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 : 619
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 "&&"??????????
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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 : 619
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 "&&"
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8132
REPUTAÇÃO : 1146
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.
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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
avatar
RenanMSV
Instrutor

Masculino PONTOS : 1676
REPUTAÇÃO : 321
Á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
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8132
REPUTAÇÃO : 1146
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 : 619
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!!
avatar
Joaogabrielf13
Avançado
Avançado

Masculino PONTOS : 802
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
avatar
RenanMSV
Instrutor

Masculino PONTOS : 1676
REPUTAÇÃO : 321
Á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 : 619
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