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 Usar a Mesma Animação Pra Personagens Diferentes na Unity ?
Erro com textura, cor e skybox
Como criar um sistema de Ranking simples.
base para multiplayer , qual melhor método, e restrições
Exportar animações
[Projeto] Line Battle
Scena Demorando muito Para Carregar!
[ NONAME ] Procura de pessoas interessadas
[TUTORIAL] Unity + PHP + Mysql (com PDO)
Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
TILEMAP NÃO FUNCIONA QUANDO ARRASTO AS SPRITES PARA TILEPALETTE
Apertar mais de um botão no UNITY
Zerar os tempos do Cronometro Unity
PHP retorno?
The Lost Blade (Em Desenvolvimento)
Spawn varios objetos
[TUTORIAL] Sistema de vida,morte,dano
Erro UNITY 5 NOTA PARA JOGO DE TERROR
Botão no Touch || saltar e tiro
Gradiente de cores
SOM Duplicado unity3d
Reproduzir audio no if c## e musica continuar tocando entre cenas.
Bug com detecção de chão
Girar personagem no próprio eixo usando joystick virtual
Asset de Efeito de congelamento
Tirar seleção de Objeto na Cena
Command 888
Missil perseguidor
Care Box - Disponível na Play Store
[TUTORIAL] Script de arma automatica
[____ADMINISTRAÇÃO____] Alterações IMPORTANTES no fórum.
Site de assets
" FUEL " O maior jogo do Mundo
[TUTORIAL] Compilar para Android
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Deformação de Objetos
Itens de diferentes tamanho no inventario
[TUTORIAL] Sistema COMPLETO de câmeras
Efeito arma giratória
[TUTORIAL] Criando Plants VS Zombies (remake - Parte 1)
Como aumentar os dados de Black In do color grading do post processing via script?
[DUVIDA] Fps multiplayer
[Asset] Script Arma Completo Incluso Recuo. Incluso outros Scripts
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
Novo jogo - Astero - PlayStore
IA de Patrulha do inimigo !
Modeladores e programadores por favor.
Dúvida com jogo estilo Clash Royale
Survalways :: procuro interessados : programador/áudio
Personagem morrer ao cair da tela
Problema na configuração do Wheel Colider (para um jogo mobile)
Celular Virtual
[TUTORIAL] SISTEMA DE CHUVA COM PARTICULAS.
Sobre Coolers ( Fans )
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
Loading cronometrado
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
The Walker [Open - Beta 0.02v]
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
unity não quer ativar a lincense
Script SceneManager.GetActiveScene
[DÚVIDA] Como publicar um jogo na Windows Store/Loja do Windows 10?
Sistema de um game de Vôlei de praia
Sistema de Compra incompleto!
Como por sistema de score em projeto Match 3 tipo Candy Crush?
Como parar um Cronometro?
Salvar dados
como fazer o corpo se mover junto com a roupa do personagem ?
sistema de dia e noite de acordo com a hora do computador.
A Unity detecta o click mouse como um touch?
Beta_Jogo (Lost and Alone)Por favor Avaliem!
Projeto em andamento! (Graficos quase realistas)
Raycast em objeto dentro de collider?
Build setting não entra
[Jogo Mobile] Alien - Lost in the space
Ajuda com cores.
[TUTORIAL] 42 ÓTIMAS DICAS DE OTIMIZAÇÃO PARA JOGOS MOBILE (Android)
[RESOLVIDO] Player Prefs perdendo dados?
[TUTORIAL] Deformar mesh com batidas (para objetos, veículos, etc)
Como fazer um corredor se fechando na unity
Trigger de audio
[TUTORIAL] Sistema de DIA E NOITE completo, com luzes noturnas e SISTEMA DE NUVENS
[Multiplayer] Base para começar um multiplayer?
Duvida com transform.localRotation!!
[TUTORIAL] Como fazer controle em TERCEIRA PESSOA para seu personagem no ANDROID!
Compilação pra android unity 3d
Tirar vida apos acabar a animação.
Como faço para colocar toque na tela (jogo 2D)
Dúvida em relação ao multiplayer
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
Preciso de integrantes!
Mages Defense - DEMO ( pc )
[TUTORIAL] Unity 3D - Fazer algo ao clicar em um objeto
Luzes que se apagam,e depois ascendem apos algum tempo.
Desenho de sprites
trocar comando do teclado para touch
Movimentar Npc atraves de dados em .csv
Projeto B
Hoje à(s) 2:07 am
Hoje à(s) 1:22 am
Ontem à(s) 9:49 pm
Ontem à(s) 9:44 pm
Ontem à(s) 9:39 pm
Ontem à(s) 8:02 pm
Ontem à(s) 8:01 pm
Ontem à(s) 7:00 pm
Ontem à(s) 6:51 pm
Ontem à(s) 6:01 pm
Ontem à(s) 4:33 pm
Ontem à(s) 3:42 pm
Ontem à(s) 3:32 pm
Ontem à(s) 2:13 am
Dom Maio 20, 2018 8:41 pm
Dom Maio 20, 2018 8:38 pm
Dom Maio 20, 2018 7:32 pm
Dom Maio 20, 2018 6:34 pm
Dom Maio 20, 2018 6:33 pm
Dom Maio 20, 2018 6:29 pm
Dom Maio 20, 2018 3:13 pm
Dom Maio 20, 2018 2:11 pm
Dom Maio 20, 2018 1:40 pm
Dom Maio 20, 2018 1:00 pm
Dom Maio 20, 2018 12:25 pm
Dom Maio 20, 2018 12:07 pm
Dom Maio 20, 2018 9:38 am
Dom Maio 20, 2018 8:49 am
Dom Maio 20, 2018 8:06 am
Sab Maio 19, 2018 8:06 pm
Sab Maio 19, 2018 5:40 pm
Sab Maio 19, 2018 1:34 pm
Sab Maio 19, 2018 1:06 pm
Sab Maio 19, 2018 12:13 pm
Sab Maio 19, 2018 11:10 am
Sab Maio 19, 2018 9:51 am
Sab Maio 19, 2018 6:11 am
Sab Maio 19, 2018 12:14 am
Sex Maio 18, 2018 10:49 pm
Sex Maio 18, 2018 7:12 pm
Sex Maio 18, 2018 4:55 pm
Sex Maio 18, 2018 11:06 am
Sex Maio 18, 2018 10:39 am
Sex Maio 18, 2018 10:12 am
Sex Maio 18, 2018 8:09 am
Qui Maio 17, 2018 9:51 pm
Qui Maio 17, 2018 5:53 pm
Qui Maio 17, 2018 5:49 pm
Qui Maio 17, 2018 4:49 pm
Qui Maio 17, 2018 3:55 pm
Qui Maio 17, 2018 1:19 am
Qui Maio 17, 2018 12:12 am
Qua Maio 16, 2018 6:59 pm
Qua Maio 16, 2018 11:59 am
Qua Maio 16, 2018 2:27 am
Ter Maio 15, 2018 11:41 pm
Ter Maio 15, 2018 11:36 pm
Ter Maio 15, 2018 8:38 pm
Ter Maio 15, 2018 8:23 pm
Ter Maio 15, 2018 3:37 pm
Ter Maio 15, 2018 2:43 pm
Ter Maio 15, 2018 1:57 pm
Ter Maio 15, 2018 10:29 am
Ter Maio 15, 2018 10:04 am
Ter Maio 15, 2018 7:48 am
Ter Maio 15, 2018 1:30 am
Seg Maio 14, 2018 11:05 pm
Seg Maio 14, 2018 8:11 pm
Seg Maio 14, 2018 6:06 pm
Seg Maio 14, 2018 4:59 pm
Seg Maio 14, 2018 4:33 pm
Seg Maio 14, 2018 4:20 pm
Seg Maio 14, 2018 3:41 pm
Seg Maio 14, 2018 2:16 pm
Seg Maio 14, 2018 1:23 pm
Seg Maio 14, 2018 12:55 pm
Seg Maio 14, 2018 11:38 am
Seg Maio 14, 2018 9:42 am
Seg Maio 14, 2018 12:45 am
Dom Maio 13, 2018 9:14 pm
Dom Maio 13, 2018 7:16 pm
Dom Maio 13, 2018 7:15 pm
Dom Maio 13, 2018 7:08 pm
Dom Maio 13, 2018 5:08 pm
Dom Maio 13, 2018 1:25 pm
Dom Maio 13, 2018 9:39 am
Dom Maio 13, 2018 5:03 am
Dom Maio 13, 2018 12:41 am
Sab Maio 12, 2018 10:11 pm
Sab Maio 12, 2018 9:44 pm
Sab Maio 12, 2018 9:44 pm
Sab Maio 12, 2018 12:45 pm
Sab Maio 12, 2018 9:00 am
Sex Maio 11, 2018 9:15 pm
Sex Maio 11, 2018 5:31 pm
Sex Maio 11, 2018 4:45 pm
Sex Maio 11, 2018 3:07 pm
Sex Maio 11, 2018 2:49 pm
Sex Maio 11, 2018 2:37 pm
Zack2
Zack2
Phph09
Phph09
Phph09
MRX
fabriciorsz34
ruanzikaad
Callyde Jr
Rayllander
RenatoMoran
Souris
Felix
Callyde Jr
ismarspn
Lteo
Callyde Jr
Rafa123
Douglas Costa Amorim
googolepton
Rayllander
Rayllander
Joaopm1
Jmspp
Dom3000
Dom3000
Callyde Jr
Callyde Jr
Another Developer
Merotec32
Matrirxp
SuperGamer
Callyde Jr
Souris
francisco barroso
Lteo
Callyde Jr
MarcosSchultz
Flávio
MayLeone
YmKx
Daniel Dória
dimmuo
dstaroski
Édipo
dkrazor
ErikBreno360
RGKC
M4theuz
mafipt
zKilleD
Zack2
Callyde Jr
julioou
mateusvasco100
WesFarias
MarcosSchultz
Souris
Souris
thiagograssi
vitorhugo
gcs13
MarcosUAC
MarcosUAC
dracuno
niao
arnaldojunior
Dom3000
Johann santos
otavio00augusto
Zecandy
julioou
isah
Daniel Dória
leocc
euvictoralmeida
RamonPS
YmKx
MarcosSchultz
isah
dstaroski
Fluttershy28
dazentt55
rafaelllsd
gcs13
Souris
niao
gcs13
Weslley
dstaroski
dstaroski
ruanzikaad
Doridian100
MarcosSchultz
XN4k3Dbr
Fluttershy28
Fluttershy28
Souris
julioou

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

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 : 1220
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 : 1396
REPUTAÇÃO : 14
Idade : 15
Á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 : 1220
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 : 1396
REPUTAÇÃO : 14
Idade : 15
Á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 : 1220
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 : 1396
REPUTAÇÃO : 14
Idade : 15
Á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 : 1220
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 : 10485
REPUTAÇÃO : 1870
Idade : 21
Á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 : 1220
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 : 1696
REPUTAÇÃO : 162
Á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 : 1220
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 : 1696
REPUTAÇÃO : 162
Á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 : 1220
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 : 10485
REPUTAÇÃO : 1870
Idade : 21
Á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 : 1220
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 : 1039
REPUTAÇÃO : 2
Idade : 36
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 : 1220
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 : 1039
REPUTAÇÃO : 2
Idade : 36
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 : 10485
REPUTAÇÃO : 1870
Idade : 21
Á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 : 1220
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 : 2117
REPUTAÇÃO : 336
Á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 : 10485
REPUTAÇÃO : 1870
Idade : 21
Á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 : 1039
REPUTAÇÃO : 2
Idade : 36
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 : 1220
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 : 2117
REPUTAÇÃO : 336
Á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 : 1039
REPUTAÇÃO : 2
Idade : 36
Respeito as regras :

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

Voltar ao Topo Ir em baixo

Voltar ao Topo


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