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:
[PEDIDO] Designers ou Entendedores (Capa,Menu e ToolTip) 3 Imagens
disolver/ desintegrar um objeto
[RESOLVIDO] Publicando Apk Parte 2
Home Simulator 2017 (Estilo The Sims em 1ª Pessoa) (Download Grátis)
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
[AJUDA] Cronometro
Movimentaçao player
[TUTORIAL] IA Simples
COMO POSSO FAZER O INIMIGO MORRER COM TIRO?
Ajustar o Brilho do LensFlare de Acordo com a Distância
CONTROLE ARCADE PARA JOGO DE CORRIDA
MUDAR FLOAT NO FIM DE UMA ANIMAÇÃO
[TUTORIAL] IA Simples Parte 2 (Atirar)
Instanciar objetos aonde mira
[DEMO] Survival Block
Aprimoramento IA Inimiga
Batalha de Canhão
[RESOLVIDO] Camera Collider
Todos os inimigos morrem
[____TÓPICO LIVRE____] FALE O QUE QUISER
Canal de tutoriais android
Area Para modeladores
Inimigo ao seguir flutua [ajuda]
Chamar Metodo
Gerador de códigos
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
Duvida sobre patrulha aleatória
Demo de jogo para testarem...
Criação de uma mensagem notificação em objeto 3d no unity
[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
GRAFICO BUGADO [MOBILE]
Duvida sobre array de gameobject
ERRO NO APK
ANIMAÇÃO
sincronizar um Variável String multiplayer
DUVIDAS VARIADAS
Publicando Apk na PlayStore
Curar vida ao coletar itens
(Dúvida) Rotacionar roda
Sistema de tráfego
ObjetoCair
Existe alguma forma de fazer multiplayer por lan ou por bluethooth?
Duvida Script
converter para C#
Animação de movimento
Modelos 3D para uso gratuito ou comercial
Ajuda com jogos em flash
[RESOLVIDO] Dano No Player Ajuda erro
Como fazer parar de seguir em uma distancia determinada
Meus modelos 3D em fase de experimento
Game Resistência
Lampião Vs Zombies - FORMAÇÃO DE EQUIPE - Jogo 2D
Criando Inteligencia Artificial Para BOSS.
Problema Com Menu Inicial !!
Tutorial rpg?
Criar um objeto preso em apenas um lado
Inventario equipando roupas - Leia mas para saber
Animação não esta ativando na hora do pulo
COMO POSSO FAZER UM MULTIPLAYER?
Menu principal não funciona no mobile
tenho que alterar os scripts para transfomar um game para Android????
Movimentação, sem Rigidbody
dash estilo megaman x, suavizar
[TUTORIAL] Mensagem aparecer na tela conforme a distância do jogador (Unity 5)
Como criar um sistema d interação cm objetos atraves do raycasthit?
RESOLVIDO Script de ligar/desligar lanterna Unity 5 Ultima Versao
Script para recarregar cena
como chamar void do objeto em que o RayCast bateu?
modificar a agua (Tsunami e outros)
bolleana [mobile]
Nav Mesh em mapa Aleatorio
Animar meu personagem (pedido)
drop Down Converter Texto Para imagem
Criar uma animação antes de começar a fase
CONTROLE DE UM CARRO PARA MOBILE
Criar chat para Android
[TUTORIAL] Ligar e Desligar Lanterna
QUERO CRIAR UM SCRIPT PARA UM SIMULADOR DE CARRO
MUDANÇA DE SCENA
Ia inimiga pequeno erro
[Meu Jogo [Aircraft- Space Guardian]] Testem porfavor !
Duvida sobre movimentação
Dúvida: Movimentação de Personagem 2D
RagDoll + Download Free -- feito por um gringo
Como permanecer mirando?
chamar animação [mobile]
Tutorial de RTS
JOGO DE PETECA(JOGAR UMA BOLINHA NA OUTRA)
[Pedido] Link de uma versão do sdk que funcione ;-;
Meu personagem na Realidade Aumentada fica tremendo
Audio Player C#
Jogo para Android, testem por favor
Jogos 2d - caminho do objeto antes de ele ser lançado
Colocar blocos e destruir os mesmos ;-;
Cemetery scene
Bocha 2017 (Bocce)
Hoje à(s) 12:46 pm
Hoje à(s) 11:20 am
Hoje à(s) 8:56 am
Hoje à(s) 7:49 am
Ontem à(s) 11:29 pm
Ontem à(s) 10:35 pm
Ontem à(s) 7:53 pm
Ontem à(s) 7:47 pm
Ontem à(s) 7:44 pm
Ontem à(s) 7:38 pm
Ontem à(s) 7:30 pm
Ontem à(s) 3:51 pm
Ontem à(s) 3:28 pm
Ontem à(s) 3:02 pm
Ter Mar 21, 2017 11:50 pm
Ter Mar 21, 2017 10:14 pm
Ter Mar 21, 2017 7:22 pm
Ter Mar 21, 2017 6:08 pm
Ter Mar 21, 2017 5:00 pm
Ter Mar 21, 2017 4:43 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 12:58 pm
Ter Mar 21, 2017 11:47 am
Ter Mar 21, 2017 10:53 am
Ter Mar 21, 2017 10:41 am
Ter Mar 21, 2017 10:13 am
Ter Mar 21, 2017 7:26 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
Ter Mar 21, 2017 12:02 am
Seg Mar 20, 2017 11:58 pm
Seg Mar 20, 2017 11:55 pm
Seg Mar 20, 2017 9:10 pm
Seg Mar 20, 2017 7:57 pm
Seg Mar 20, 2017 6:41 pm
Seg Mar 20, 2017 4:31 pm
Seg Mar 20, 2017 8:10 am
Dom Mar 19, 2017 11:32 pm
Dom Mar 19, 2017 8:50 pm
Dom Mar 19, 2017 8:20 pm
Dom Mar 19, 2017 12:06 pm
Sab Mar 18, 2017 10:31 pm
Sab Mar 18, 2017 10:01 pm
Sab Mar 18, 2017 8:26 pm
Sab Mar 18, 2017 8:06 pm
Sab Mar 18, 2017 6:53 pm
Sab Mar 18, 2017 5:31 pm
Sab Mar 18, 2017 9:41 am
Sab Mar 18, 2017 7:23 am
Sex Mar 17, 2017 11:51 pm
Sex Mar 17, 2017 10:02 pm
Sex Mar 17, 2017 3:21 pm
Sex Mar 17, 2017 12:42 pm
Sex Mar 17, 2017 10:47 am
Qui Mar 16, 2017 11:16 pm
Qui Mar 16, 2017 9:33 pm
Qui Mar 16, 2017 9:32 pm
Qui Mar 16, 2017 9:28 pm
Qui Mar 16, 2017 9:18 pm
Qui Mar 16, 2017 9:16 pm
Qui Mar 16, 2017 9:09 pm
Qui Mar 16, 2017 9:08 pm
Qui Mar 16, 2017 9:07 pm
Qui Mar 16, 2017 9:06 pm
Qui Mar 16, 2017 8:59 pm
Qui Mar 16, 2017 8:56 pm
Qui Mar 16, 2017 8:52 pm
Qui Mar 16, 2017 8:48 pm
Qui Mar 16, 2017 8:44 pm
Qui Mar 16, 2017 8:44 pm
Qui Mar 16, 2017 8:40 pm
Qui Mar 16, 2017 8:20 pm
Qui Mar 16, 2017 7:33 pm
Qui Mar 16, 2017 5:32 pm
Qui Mar 16, 2017 5:32 pm
Qui Mar 16, 2017 5:14 pm
Qui Mar 16, 2017 5:12 pm
Qui Mar 16, 2017 10:49 am
Qua Mar 15, 2017 7:56 pm
Qua Mar 15, 2017 7:08 pm
Qua Mar 15, 2017 5:24 pm
Qua Mar 15, 2017 5:03 pm
Qua Mar 15, 2017 4:38 pm
Qua Mar 15, 2017 3:26 pm
Qua Mar 15, 2017 3:17 pm
Qua Mar 15, 2017 2:58 pm
Qua Mar 15, 2017 2:31 pm
Qua Mar 15, 2017 11:50 am
Qua Mar 15, 2017 9:22 am
Ter Mar 14, 2017 11:14 pm
Ter Mar 14, 2017 8:03 pm
Ter Mar 14, 2017 4:34 pm
Ter Mar 14, 2017 11:18 am
Ter Mar 14, 2017 9:47 am
Seg Mar 13, 2017 11:55 pm
Madness
Valakinhas
Paizudo
Creat Games
brtutors324
Junim
zZAndersonZz
Gabriel César O
Gabriel César O
AnderGames
Gabriel César O
lucasfera15
Matrirxp
hackernew404
rafaelllsd
Matrirxp
AndyShow
ffabim
rafaelllsd
PauloFR
MikaelSteam
PauloFR
bravoent
Matrirxp
Ghosthy
DuViDoSo34
arnaldojunior
Édipo
Phillip
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
lucasfera15
Khilua
PauloFR
Paizudo
willtuck
rafaelllsd
rafaelllsd
IanLuan
John Rambo
kalielson
willtuck
MikaelSteam
joabr
Luiz Mauro TCC
bravoent
AndyShow
joabr
kalielson
BatataName
Callyde Jr
John Rambo
Callyde Jr
IanLuan
MarcosSchultz
Junim
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Phillip
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
kalielson
MarcosSchultz
MarcosSchultz
Junim
Junim
Gabriel César O
Gabriel César O
Gabriel César O
Lukynhasfera70
Junim
Junim
Junim
Junim
MateusWTP
victorgx22
dstaroski
IgorFporto
BatataName
IgorFporto
sabbath
FPR Software
kalielson
weslleyFx
Creat Games
joabr
AndyShow

TimeAttack

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

DÚVIDA TimeAttack

Mensagem por willianroma em Ter Jul 05, 2016 2:12 pm

Eu utilizo o IEnumerator para fazer a transição de ataque para o "time ataque" ou existe uma maneira mais eficiente de fazer isso?


Parte do Script do inimigo que estou me debatendo pra tentar arrumar:

Spoiler:

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

public enum ENEMY_STATES{

   WALK,
   ATTACK,
   TIME_ATTACK,
   DIE
}

public class EnemyBehaviour : LifeBase {

   public Animator enemyAnimator;
   public Rigidbody2D enemyRigid;

   public float speed;
   private Vector3 positionRightEnemy;
   private Vector3 positionLeftEnemy;
   private bool lookToRightEnemy = true;
   public float attackDamage;

   public float distanceToAttack;

   public bool timeAttackTrue;

   private ENEMY_STATES currentState;

   private TutoBehaviour player;

   void Start () {
      base.Start ();

      ChangeState (ENEMY_STATES.WALK);

      player = FindObjectOfType (typeof(TutoBehaviour)) as TutoBehaviour;

      positionRightEnemy = enemyAnimator.transform.localScale;
      positionLeftEnemy = positionRightEnemy;
      positionLeftEnemy.x *= -1;

   }
   
   // Update is called once per frame
   void Update () {
      base.Update ();

      if(enemyRigid.velocity.x > 0)
      {
         lookToRightEnemy = true;
      }
      if(enemyRigid.velocity.x < 0)
      {
         lookToRightEnemy = false;
      }

      if(lookToRightEnemy)
      {
         transform.localScale = positionRightEnemy;
      }
      else
      {
         transform.localScale = positionLeftEnemy;
      }

      switch (currentState) {
         case ENEMY_STATES.WALK:{
            
            transform.Translate (Vector3.left * speed * Time.deltaTime);
            lookToRightEnemy = false;
            float currentDistanceToPlayer = Vector3.Distance (transform.position, player.transform.position);//mov
            //muda de movimentação para attack
            if (currentDistanceToPlayer < distanceToAttack) {
               ChangeState (ENEMY_STATES.ATTACK);
               enemyAnimator.SetBool ("AttackEnemy", true);//animação on
            }

            break;
         }
         case ENEMY_STATES.ATTACK:{
            float currentDistanceToPlayer = Vector3.Distance (transform.position, player.transform.position);//movimentação
            player.GetComponent<LifeBase>().ApplyDamage(attackDamage);
            //mudar de attack para movimentação
            if (currentDistanceToPlayer > distanceToAttack) {
               ChangeState (ENEMY_STATES.WALK);
               enemyAnimator.SetBool ("AttackEnemy", false);//animação off
               enemyAnimator.SetBool ("TimeAttack", false);
            } else {

               if (currentDistanceToPlayer < distanceToAttack && timeAttackTrue == false) {

                  StartCoroutine ("TimeAttack");
               }
               if (timeAttackTrue == true) {
                  enemyAnimator.SetBool ("TimeAttack", true);
                  enemyAnimator.SetBool ("AttackEnemy", false);
                  ChangeState (ENEMY_STATES.TIME_ATTACK);
               }
            
            }
            break;
         }
         case ENEMY_STATES.TIME_ATTACK:{
            float currentDistanceToPlayer = Vector3.Distance (transform.position, player.transform.position);//movimentação

            //mudar de attack para movimentação
            if (currentDistanceToPlayer > distanceToAttack) {
               ChangeState (ENEMY_STATES.WALK);
               enemyAnimator.SetBool ("AttackEnemy", false);//animação off
               enemyAnimator.SetBool ("TimeAttack", false);
            }


            if (currentDistanceToPlayer < distanceToAttack && timeAttackTrue == true) {
               
               StartCoroutine ("ReturAttack");
            }
            if (timeAttackTrue == false) {
               enemyAnimator.SetBool ("AttackEnemy", true);
               enemyAnimator.SetBool ("TimeAttack", false);
               ChangeState (ENEMY_STATES.ATTACK);
            }

            break;
         }
         case ENEMY_STATES.DIE:{

            break;
         }
      }

   }


   IEnumerator TimeAttack () {
      Debug.Log ("inicia");

      yield return new WaitForSeconds (0.1f);
      timeAttackTrue = true;

   }   

   IEnumerator ReturAttack () {
      Debug.Log ("volta");

      yield return new WaitForSeconds (1.5f);
      timeAttackTrue = false;





   }

   private void ChangeState (ENEMY_STATES newState){
      currentState = newState;
   }

   protected override void OnDamage () {
      
   }
   protected override void OnDestroyIt () {
      Destroy (gameObject);
   }

}



Estou tentando usa o IEnumerator pra controlar a transação de "attack" para "timeAttack" mas quando dou play, funciona somente na primeira vez (creio eu), ele da o time certinho mas quando ele repete o processo ele não respeita o 1.5 segundos que determinei no IEnumerator.

simplificando: quero dar um tempo do "timeAttack" para o "attack".


Última edição por willianroma em Ter Jul 05, 2016 4:49 pm, editado 1 vez(es)

willianroma
Avançado
Avançado

PONTOS : 387
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: TimeAttack

Mensagem por MarcosSchultz em Ter Jul 05, 2016 4:33 pm

Tem como postar o script todo para fins de teste?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8091
REPUTAÇÃO : 1137
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: TimeAttack

Mensagem por John Rambo em Ter Jul 05, 2016 4:47 pm

Tente usar Time.deltatime
avatar
John Rambo
Moderador

Masculino PONTOS : 1587
REPUTAÇÃO : 301
Idade : 17
Áreas de atuação :
Unity;
Programação;
Modelagem;
Criação de cenários;
Sonorização;

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: TimeAttack

Mensagem por willianroma em Ter Jul 05, 2016 4:50 pm

MarcosSchultz escreveu:Tem como postar o script todo para fins de teste?
pronto, editei o codigo, ta inteiro agora

willianroma
Avançado
Avançado

PONTOS : 387
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: TimeAttack

Mensagem por MarcosSchultz em Ter Jul 05, 2016 11:49 pm

Tem como postar o script "LifeBase" também? precisamos dele, por que este script atual herda as características do script LifeBase
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8091
REPUTAÇÃO : 1137
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: TimeAttack

Mensagem por willianroma em Qua Jul 06, 2016 12:38 am

MarcosSchultz escreveu:Tem como postar o script "LifeBase" também? precisamos dele, por que este script atual herda as características do script LifeBase
Imaginei que ia precisar quando tava revisando o script 

Spoiler:

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

public abstract class LifeBase : MonoBehaviour {

   public Slider lifeBar;

   private float currentLife;




   protected void Start () {

      currentLife = lifeBar.maxValue;

   }
   

   protected void Update () {
   
      lifeBar.value = currentLife;

   }

   public void ApplyDamage (float damage) {
      currentLife -= damage;
      OnDamage ();

      if (currentLife < 0.1f) {
         OnDestroyIt ();
      }
   }

   protected abstract void OnDamage ();
   protected abstract void OnDestroyIt ();
}



willianroma
Avançado
Avançado

PONTOS : 387
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: TimeAttack

Mensagem por MarcosSchultz em Sex Jul 08, 2016 12:45 am

kkkkkk, ainda vou precisar do script "TutoBehaviour"

Mas eu estava reparando nesta rotina:

Código:
IEnumerator TimeAttack () {
   Debug.Log ("inicia");
   yield return new WaitForSeconds (0.1f);
   timeAttackTrue = true;

Ela que da o tempo para a variável "timeAttackTrue" ficar verdadeira e liberar o resto das rotinas, mas o tempo dela é só 0.1
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8091
REPUTAÇÃO : 1137
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: TimeAttack

Mensagem por willianroma em Sex Jul 08, 2016 10:42 am

Coloquei 0.1s pra ser o atk, assim o player só recebe 1 hit. Mas pelo que tava vendo aqui, acho que estou usando errado o "IEnumerator" ou algo assim pq ele não respeita o tempo do segundo "IEnumerator" que criei pra poder volta a atacar (ReturAttack), ele buga e o 1.5s que determinei é ignorado, algo assim.

ta bem bagunçado o codigo do "TutoBehaviour", preciso apagar algumas linhas de códigos que não estão servindo pra nada kkk
Spoiler:

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

public class TutoBehaviour : MonoBehaviour {

 private Rigidbody2D tutoRigid;
 private Animator tutoAnimator;

 public float tutoSpeedX;
 public float maxTutoSpeed;
 public float tutoJump;
 private bool lookToRight = true;
 private Vector3 positionRight;
 private Vector3 positionLeft;

 public Transform posicao1;
 public Transform posicao2;
 public bool chao;

 private GameObject enemy;


 //dano
 public float damage;
 public float distanceAttack;
 public bool cooldown;

 //public List<SpellsBase> magics;
 //public int currentMagic;
 //public float currentCooldownTime;


 void Start () {
 tutoRigid = GetComponent<Rigidbody2D> ();
 tutoAnimator = GetComponent<Animator> ();


 positionRight = tutoAnimator.transform.localScale;
 positionLeft = positionRight;
 positionLeft.x *= -1;


 //enemy = FindObjectOfType (typeof(Enemy)) as Enemy;

 cooldown = true;
 }
 

 void Update () {
 
 Vector2 tutoDirecao = new Vector2 (Input.GetAxis ("Horizontal") * tutoSpeedX * Time.deltaTime, 0);

 enemy = GameObject.FindWithTag ("Enemy");
 //codigo para movimentaçao
 tutoRigid.velocity = new Vector2 (tutoDirecao.x, tutoRigid.velocity.y);


 if (tutoRigid.velocity.x > maxTutoSpeed) {
 tutoRigid.velocity = new Vector2 (maxTutoSpeed, tutoRigid.velocity.y);
 }

 if (tutoRigid.velocity.x < -maxTutoSpeed) {
 tutoRigid.velocity = new Vector2 (-maxTutoSpeed, tutoRigid.velocity.y);
 }

 //codigo para animaçao enquanto se movimenta
 tutoAnimator.SetFloat ("Walk", Mathf.Abs (tutoDirecao.x));

 //codigo para olhar para traz
 if (tutoDirecao.x > 0) {
 lookToRight = true;
 }
 if (tutoDirecao.x < 0) {
 lookToRight = false;
 }

 if (lookToRight) {
 transform.localScale = positionRight;
 } else {
 transform.localScale = positionLeft;
 }

 Raycast ();

 Jump ();

 //Attack ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 //posição do inimigo
 // float enemyDistance = Vector2.Distance (enemy.transform.position, transform.position);

 if (cooldown == true) {
 
 if (Input.GetKeyDown (KeyCode.K) /*&& currentCooldownTime > magics [currentMagic].cooldownTime*/) {

 tutoAnimator.SetBool ("Attack", true);
 StartCoroutine ("TimeAttack");
 if (Vector2.Distance (transform.position, enemy.transform.position) < distanceAttack) {
 if (enemy.gameObject.activeInHierarchy) {
 enemy.GetComponent<LifeBase> ().ApplyDamage (damage);
 }
 }
 } else {
 tutoAnimator.SetBool ("Attack", false);

 }
 }


 /*if (magics [currentMagic].canUseMagic) {

 GameObject tempMagic = Instantiate (magics [currentMagic].gameObject, transform.position, transform.rotation) as GameObject;
 tempMagic.GetComponent<SpellsBase> ().SetDirection (lookToRight);
 currentCooldownTime = 0;

 tutoAnimator.SetBool ("Attack", true);
 } else {
 tutoAnimator.SetBool ("Attack", false);
 }

 }
 currentCooldownTime += Time.deltaTime;
*/
 }
 //Attack ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


 void Jump()
 {
 if(chao == true)
 {
 tutoAnimator.SetBool("Jump",false);
 tutoAnimator.SetBool("Fall",false);

 if(Input.GetButtonDown("Jump"))
 {
 tutoRigid.velocity = new Vector2(tutoRigid.velocity.x,tutoJump);
 }
 }
 else
 {
 if(Input.GetButtonUp("Jump") && tutoRigid.velocity.y > 0)
 {
 tutoRigid.velocity = new Vector2 (0,tutoRigid.velocity.y/2); //Para pular conforme aperta espaço
 }
 if(tutoRigid.velocity.y > 0)
 {
 tutoAnimator.SetBool("Jump",true);
 tutoAnimator.SetBool("Fall",false);
 }
 if(tutoRigid.velocity.y < 0)
 {
 tutoAnimator.SetBool("Jump",false);
 tutoAnimator.SetBool("Fall",true);
 }
 if(tutoRigid.velocity.y == 0)
 {
 tutoAnimator.SetBool("Jump",false);
 tutoAnimator.SetBool("Fall",false);
 }
 }

 }

 void Raycast()
 {
 Debug.DrawLine(posicao1.position, posicao2.position, Color.red);

 if(Physics2D.Linecast(posicao1.position, posicao2.position))
 {
 chao = true;
 }
 else
 {
 chao = false;
 }

 }

 void OnTriggerEnter2D(Collider2D enterDoor) {

 if (enterDoor.gameObject.tag == "EnterInTheDoor") {
 GameController.instance.ChangeState (GAME_STATE.NEXT);
 }
 
 }

 IEnumerator TimeAttack() {

 cooldown = true;
 yield return new WaitForSeconds (0.1f);
 cooldown = false;
 yield return new WaitForSeconds (0.4f);
 cooldown = true;
 }

}




willianroma
Avançado
Avançado

PONTOS : 387
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

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


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