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:
[TUTORIAL] Sistema de inventário Sobrevivência
Não estou conseguindo criar uma conta na unity?
Seguir um raio no raycast a partir do ponto da tela clicado
Deixar botão invisível parecendo toque na região da tela
Baixos Brasil - Jogo de Carro Brasileiro!
Contar a quantidade total instanciados em um array
[RESOLVIDO] Contar pontos não faz a soma e tambem não atualiza
UNITY ADS
1º SDP (Seleção de Projetos) - Games Indie 2017
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
IDB JAM #10
O software Revit é uma boa ferramenta para criação de cenários para unity?
[TUTORIAL] Lanterna
como deixar ativos os botões Escape/Home/Menu?
MOVIMENTAÇÃO EM 8 DIREÇÕES.
Auto-Complete do Visual Studios
[TUTORIAL] Mostrar Data e Hora atual do Computador em um texto
Estamos precisando de um Programador que Programe em C# para Unity
Verificar inventario
Compilar pra Android
[Teste]Testem Meu Jogo - Geometry Destroy Beta
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[TUTORIAL] Como fazer uma Barra de Loading na Unity 5
[TUTORIAL] Derrubar arvores e dropar madeiras dela
Detectar Hit
[DUVIDA] Trocar botoes no teclado por joystick UI
Me ajudem, com a criação de terreno !
[RESOLVIDO]animações não sendo reproduzidas
DUVIDA : Raycast
Como fazer Escudo seguir a movimentação do Player?
Como fazer para o tiro ir para a direção onde o cano está apontado e não para cima
Unity Ads ou AdMob!
Render texture invertida
Como fazer barco estilo minecraft ou estilo navio que da pra andar dentro
Como locomover um trem
Pequeno problema com no Debug
Building System
TELEPORT 2D
Adicionar linhas no TXT pelo codigo
Formação De Equipe Pra Criar RPG
Como não perder qualidade nas texturas 2d?
Personagem morrer ao cair da tela
Deixar objeto invisível.
Divulgaçao de Battle of Worlds
[Resolvido]Problema nesse pequeno script
Movimentação
Puzzle para jogo de terror , abrir portas etc..
Script para mudar posição do personagem
Como saber quando minha animação terminou?
system inventory , craft
ajuda
Aplicar roupa no Rig do blender...
Project Valley of Trees - Primeiro nome que faz sentido KK
A.S TRUCK
Som de correr não para de tocar
Reproduzir audio no if c## e musica continuar tocando entre cenas.
Como Colocar Pontuação Final na GUI de GAME OVER
Unity 2017 Iluminação RealTime VS Baked [Comparaçâo]
Programador para equipe
Da pra colocar sisteminha em um jogo da unity pra trolar quem for piratear o jogo?
Como colocar musicas em sequencia para tocar?
Trajetória da bala com predição
Ajudinha com Bug
[RESOLVIDO] Poblema com Rigidbody
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
Erro ao bulidar para Windows(.exe)
Mudar a gravidade com rotação (sensores do smartphone)
Problemas na detecção de colisão
Trabalhar simultaneamente na Unity
Movimetaçao infinita
(duvida)pq isso acontece com o inimigo?
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
[DUVIDA] Como alterar a intensidade do ChromaticAberration do PostProcessing?
Joystick VR não funciona no ios
Problema na minha animação feita na Unity
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
IA para inimigo seguir o jogador ( Plataforma )
Tirar Fotos no Unity 5 FPS
[TUTORIAL] Cena inicial de CARREGAMENTO, creditos, logo, etc [UNITY 5]
Como Limitar Spawn de Hordas
Desmembramento
Exemplo de UI com abas - utilizando toggles e toggle group.
Ajuda Blender
Quando Instancio botão ele não aparece no canvas
Sistema de pesca 2D
Metroidvania - procuro membros
Criação de Update para Seus jogos?
Blender, animação + Unity
Preciso de alguém que desenvolva Craft, e Inventario com sistema de Bolsas, Pago bem
[MODELADOR] Procurando Projetos
Carákas que Tops WO.OW
Anexar GameObject por scrit
Como cria um sistema de seve game
Efeito de Audio
Bug de sumir todas as modelagens 3D na unity 2017
Quero fazer minha propria lens flare
Menu para selecao de cena
Dificuldades com programação no Unity 5 2D
Bug ? offline e online
Hoje à(s) 7:43 pm
Hoje à(s) 6:35 pm
Hoje à(s) 6:07 pm
Hoje à(s) 5:25 pm
Hoje à(s) 4:49 pm
Hoje à(s) 3:57 pm
Hoje à(s) 2:08 pm
Hoje à(s) 11:58 am
Hoje à(s) 8:52 am
Hoje à(s) 2:14 am
Hoje à(s) 12:19 am
Hoje à(s) 12:13 am
Ontem à(s) 11:50 pm
Ontem à(s) 11:24 pm
Ontem à(s) 10:10 pm
Ontem à(s) 10:09 pm
Ontem à(s) 9:57 pm
Ontem à(s) 9:53 pm
Ontem à(s) 9:49 pm
Ontem à(s) 9:35 pm
Ontem à(s) 8:27 pm
Ontem à(s) 8:17 pm
Ontem à(s) 6:57 pm
Ontem à(s) 6:46 pm
Ontem à(s) 6:44 pm
Ontem à(s) 6:41 pm
Ontem à(s) 4:12 pm
Ontem à(s) 1:35 pm
Ontem à(s) 1:09 pm
Ontem à(s) 12:29 pm
Ontem à(s) 12:22 pm
Qui Set 21, 2017 10:03 pm
Qui Set 21, 2017 9:37 pm
Qui Set 21, 2017 9:36 pm
Qui Set 21, 2017 7:17 pm
Qui Set 21, 2017 5:37 pm
Qui Set 21, 2017 3:54 pm
Qui Set 21, 2017 12:19 pm
Qui Set 21, 2017 12:17 pm
Qui Set 21, 2017 9:00 am
Qua Set 20, 2017 11:07 pm
Qua Set 20, 2017 9:57 am
Qua Set 20, 2017 7:07 am
Ter Set 19, 2017 11:53 pm
Ter Set 19, 2017 10:15 pm
Ter Set 19, 2017 8:34 pm
Ter Set 19, 2017 7:40 pm
Ter Set 19, 2017 4:29 pm
Ter Set 19, 2017 12:14 pm
Ter Set 19, 2017 10:55 am
Ter Set 19, 2017 10:26 am
Ter Set 19, 2017 8:21 am
Ter Set 19, 2017 2:42 am
Seg Set 18, 2017 10:20 pm
Seg Set 18, 2017 9:16 pm
Seg Set 18, 2017 8:40 pm
Seg Set 18, 2017 8:39 pm
Seg Set 18, 2017 8:08 pm
Seg Set 18, 2017 2:22 pm
Seg Set 18, 2017 12:15 pm
Seg Set 18, 2017 9:33 am
Seg Set 18, 2017 8:21 am
Seg Set 18, 2017 12:59 am
Dom Set 17, 2017 5:04 pm
Dom Set 17, 2017 3:45 pm
Dom Set 17, 2017 10:49 am
Sab Set 16, 2017 11:18 pm
Sab Set 16, 2017 5:57 pm
Sab Set 16, 2017 4:10 pm
Sab Set 16, 2017 3:05 pm
Sab Set 16, 2017 2:23 pm
Sab Set 16, 2017 12:40 pm
Sab Set 16, 2017 12:16 pm
Sab Set 16, 2017 10:17 am
Sab Set 16, 2017 9:53 am
Sab Set 16, 2017 9:26 am
Sab Set 16, 2017 9:10 am
Sex Set 15, 2017 11:51 pm
Sex Set 15, 2017 8:27 pm
Sex Set 15, 2017 7:27 pm
Sex Set 15, 2017 6:17 pm
Sex Set 15, 2017 3:08 pm
Sex Set 15, 2017 11:19 am
Sex Set 15, 2017 9:43 am
Qui Set 14, 2017 11:50 pm
Qui Set 14, 2017 1:55 pm
Qui Set 14, 2017 12:13 pm
Qui Set 14, 2017 10:07 am
Qua Set 13, 2017 9:52 pm
Ter Set 12, 2017 10:33 pm
Ter Set 12, 2017 10:21 pm
Ter Set 12, 2017 9:34 pm
Ter Set 12, 2017 8:52 pm
Ter Set 12, 2017 7:05 pm
Ter Set 12, 2017 6:53 pm
Ter Set 12, 2017 6:51 pm
Ter Set 12, 2017 3:04 pm
Ter Set 12, 2017 2:04 pm
Ter Set 12, 2017 11:54 am
Phph09
Encracker
Phph09
g
Duarte
Jmspp
Jmspp
guimaraf
LukkaFA
HeroSword
dimmuo
André Gomes
walibaka
Weslley
Weslley
Weslley
JorgeLuizxd
Weslley
Weslley
Weslley
dstaroski
dstaroski
raulframos
MarcosSchultz
MarcosSchultz
MarcosSchultz
EndStarsProgramming2
Phph09
Phph09
RobinF
Jmspp
Duarte
g
Unidade3d5
Zecandy
ManoTrevor
AndyShow
Weslley
Weslley
Bruno
JorgeLuizxd
Bruno
GabriG07
Dom3000
g
Weslley
Zecandy
Weslley
artplayer
PatifeCraft
Lteo
Fagner
Madness
PatifeCraft
dstaroski
eduu10
JorgeLuizxd
MateusWTP
Brunotrinkss
guimaraf
Weslley
guimaraf
ManoTrevor
PedroL123
dstaroski
GabriG07
Brgs886
Madness
Fagner
PedroL123
glauco
Callyde Jr
JorgeLuizxd
Henrique Ramires
Weslley
Weslley
Weslley
Weslley
Weslley
Weslley
916anderson
rafaelllsd
Fagner
Fagner
rafaelllsd
Carlin
artplayer
Ronnisz
Jhonatham1
mrariel2011
AndyShow
Fagner
PatifeCraft
AndyShow
AndyShow
AndyShow
Alessandra Matheus
Lteo
Callyde Jr

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 : 979
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 : 1155
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 : 979
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 : 1155
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 : 979
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 : 1155
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 : 979
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 : 9674
REPUTAÇÃO : 1666
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 : 979
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 : 1453
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 : 979
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 : 1453
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 : 979
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 : 9674
REPUTAÇÃO : 1666
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 : 979
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 : 796
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 : 979
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 : 796
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 : 9674
REPUTAÇÃO : 1666
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 : 979
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 : 1860
REPUTAÇÃO : 326
Á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 : 9674
REPUTAÇÃO : 1666
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 : 796
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 : 979
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 : 1860
REPUTAÇÃO : 326
Á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 : 796
REPUTAÇÃO : 2
Idade : 36
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