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:
Procurando animador
[ERRO] Unity Bug Reporter
[____TÓPICO LIVRE____] FALE O QUE QUISER
Sistema de build place
[2 interiores Modelo] + Download Grátis --Para uso comercial!
QUIOFOBIA DEMO-JOGO DE TERROR INDIE
Pode coolocar os jogos que aprendeu a fazer no youtube a venda?
sistema de combos e danos
//Script com tuto//
PRECISO DE UMA PESSOA QUE DESENHE PERSONAGEM E CENARIO
Cor
Modelos 3D
ROLLER BALL DO STANDARD ASSETS
SCRIPT DE INTELIGENCIA ARTIFICIAL PARA ZUMBI, DESVIAR DE OBJETOS E ATACAR JOGADOR
[Resolvido]Trocar cena ao eliminar objetos
Menu Right Click igual Tibia
Sistema de Skins estilo CsGo ou Critical Ops...
[RESOLVIDO] Carro flutuando
[Teste]Laqua - Jogo de slá oque
TELA ROSA NO GAME
Como usar o Multi Touch para movimentar um personagem ?
[DUVIDA] Script Não Funciona
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
[Assets/Scripts] Repositório no Github com sistemas free.
// RAIN no unity//
[DÚVIDA]Texto Não Aparece Unity 5
Texturização para Game em android
Como fazer aparecer notificações no celular android?
Limite e Volta no transform translate
objeto descer ao apertar um botão
[RESOLVIDO]Erro com script OnTriggerEnter e BoxCollider
Duvida com script
Problema com Animation
Ajudem com efeito "gelatina" em modelos.
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
[_____CRONOGRAMA DO CANAL_____]
Testem meu Jogo de Aventura
Inteligência Artificial
Como fazer 1 Portal
[Assets] modelos 3d
Da para criar com o unity?
Existe algum tipo de FPSController para android?
[TUTORIAL] Unity 5 - Porta automática
Problema com o MonoDevelop
Como melhorar desempenho de animações
Cena Loading para carregar proximo Level
como criar um jogo igual a guitar hero?
(Dúvida) Erro criar sala com Photon.
Dicas para otimizar o meu jogo
Sistema de construção estilo habbo
[ERRO] Fatal Error Unity!!!
Fazer um Certo Ponto da mesh mudar de cor como um botão piscando
PlayerPrefs
[TUTORIAL] UNITY 5 - Efeito submerso (underwater effect), distorção da água e gotas na tela
Dúvida sobre instantiate!
Footsteps no CharacterController (Unity 5)
Como fazer objetos não atravessar paredes usando transform.Translate?
Quando meu inimigo morre todos morrem, alguem ajuda ?
Asset Store
Mudar cor de um material por Script de forma suave
[Dúvida] Otimização
[DUVIDA] Como utilizar o touch no Android em um jogo 2D
[TUTORIAL] Spawn de objetos aleatorios em lugares aleatorios
Mudança no NavMeshAgent?
Script para saber se ena está ativa ou carregada
Duvida
Inserir uma página da web dentro do meu jogo
[TUTORIAL] Acessar propriedades dos SHADERS através de SCRIPTS
// Sistema de Afogamento//
Inimigo seguir quando ver o player
Jogo da Memória para crianças. (Android)
(Dúvida) Mirar em terceira pessoa.
Eu produzi esse jogo na unity e gostaria que vocês testassem e avaliassem
I.A Que ataca qualquer coisa inclusive Players..
[DUVIDA]Pergunta Aleatória
Teclado igual o jogo do milhão
Modelos 3d para uso gratuito ou comercial
[TUTORIAL] Unity 5- Sistema de PLATAFORMAS COM ROTAS
///Duvida///
Unity 5 lag com muitas arvores e grass
Problema com "Non-convex MeshCollider"
[____REGRAS DO FÓRUM____]
modelo 3d rotaçao estranha
Direitos autorais de modelos 3D?
ZombieAI
Iluminação ou Shader Bugado ?!
como criar uma barra de vida?
[Asset]Terreno .dae
Problema com GetComponent
[RESOLVIDO] Como ativar e desativar um objeto.
COMO ATIVAR ANIMACAO EMPURRAR OBJETO?
(DUVIDA) Empurrar caixas estilo Resident Evil
Erro de falsa memoria
preciso usar o Lerp fora do Update
[ AJUDA ]Probemas Com seleção de Carros.
Terminei meu game de terror...joguem...
[RESOLVIDO] COMO CRIAR UM ASSET ?
[RESOLVIDO] Como posto o link do game q fiz para o pessoal testar e avaliar?
Criação de tags para objetos
Hoje à(s) 8:04 am
Hoje à(s) 5:42 am
Hoje à(s) 3:51 am
Hoje à(s) 3:50 am
Ontem à(s) 11:38 pm
Ontem à(s) 10:46 pm
Ontem à(s) 10:38 pm
Ontem à(s) 10:10 pm
Ontem à(s) 10:05 pm
Ontem à(s) 9:31 pm
Ontem à(s) 9:31 pm
Ontem à(s) 8:40 pm
Ontem à(s) 8:39 pm
Ontem à(s) 7:26 pm
Ontem à(s) 7:17 pm
Ontem à(s) 6:12 pm
Ontem à(s) 3:54 pm
Ontem à(s) 9:44 am
Ontem à(s) 8:08 am
Ontem à(s) 2:49 am
Qui Fev 23, 2017 9:09 pm
Qui Fev 23, 2017 7:21 pm
Qui Fev 23, 2017 2:50 pm
Qui Fev 23, 2017 12:18 pm
Qui Fev 23, 2017 12:06 pm
Qua Fev 22, 2017 11:32 pm
Qua Fev 22, 2017 8:27 pm
Qua Fev 22, 2017 8:19 pm
Qua Fev 22, 2017 6:26 pm
Qua Fev 22, 2017 5:53 pm
Qua Fev 22, 2017 3:15 pm
Qua Fev 22, 2017 2:20 pm
Qua Fev 22, 2017 1:58 pm
Qua Fev 22, 2017 11:52 am
Qua Fev 22, 2017 9:18 am
Qua Fev 22, 2017 9:07 am
Qua Fev 22, 2017 12:36 am
Ter Fev 21, 2017 10:18 pm
Ter Fev 21, 2017 9:15 pm
Ter Fev 21, 2017 8:45 pm
Ter Fev 21, 2017 8:21 pm
Ter Fev 21, 2017 7:20 pm
Ter Fev 21, 2017 4:40 pm
Ter Fev 21, 2017 3:26 pm
Ter Fev 21, 2017 1:53 pm
Ter Fev 21, 2017 1:18 pm
Ter Fev 21, 2017 11:42 am
Ter Fev 21, 2017 11:25 am
Seg Fev 20, 2017 10:43 pm
Seg Fev 20, 2017 10:00 pm
Seg Fev 20, 2017 9:04 pm
Seg Fev 20, 2017 9:02 pm
Seg Fev 20, 2017 9:00 pm
Seg Fev 20, 2017 8:58 pm
Seg Fev 20, 2017 8:56 pm
Seg Fev 20, 2017 8:49 pm
Seg Fev 20, 2017 8:46 pm
Seg Fev 20, 2017 8:44 pm
Seg Fev 20, 2017 8:42 pm
Seg Fev 20, 2017 8:40 pm
Seg Fev 20, 2017 8:36 pm
Seg Fev 20, 2017 8:28 pm
Seg Fev 20, 2017 8:25 pm
Seg Fev 20, 2017 8:23 pm
Seg Fev 20, 2017 8:19 pm
Seg Fev 20, 2017 8:14 pm
Seg Fev 20, 2017 8:12 pm
Seg Fev 20, 2017 7:37 pm
Seg Fev 20, 2017 3:35 pm
Seg Fev 20, 2017 3:19 pm
Seg Fev 20, 2017 8:54 am
Seg Fev 20, 2017 12:10 am
Dom Fev 19, 2017 10:55 pm
Dom Fev 19, 2017 9:18 pm
Dom Fev 19, 2017 9:02 pm
Dom Fev 19, 2017 8:31 pm
Dom Fev 19, 2017 6:37 pm
Dom Fev 19, 2017 6:32 pm
Dom Fev 19, 2017 3:46 pm
Dom Fev 19, 2017 3:33 pm
Dom Fev 19, 2017 10:43 am
Sab Fev 18, 2017 11:53 pm
Sab Fev 18, 2017 9:17 pm
Sab Fev 18, 2017 8:34 pm
Sab Fev 18, 2017 8:13 pm
Sab Fev 18, 2017 6:58 pm
Sab Fev 18, 2017 5:32 pm
Sab Fev 18, 2017 4:20 pm
Sex Fev 17, 2017 9:27 pm
Sex Fev 17, 2017 7:18 pm
Sex Fev 17, 2017 9:54 am
Qui Fev 16, 2017 6:40 pm
Qui Fev 16, 2017 4:59 pm
Qui Fev 16, 2017 1:14 pm
Qui Fev 16, 2017 11:32 am
Qua Fev 15, 2017 11:24 pm
Qua Fev 15, 2017 10:10 pm
Qua Fev 15, 2017 8:12 pm
Qua Fev 15, 2017 3:08 pm
Édipo
Rafael Kuriki
AndyShow
AndyShow
MateusWTP
PauloFR
zBanidor
AndyShow
AndyShow
joabr
richerd
Junim
lucasfera15
PauloFR
PauloFR
AndyShow
weslleyFx
AndyShow
dstaroski
nobruzada
BatataName
GabrielRaaposo
MarcosSchultz
dimmuo
Zecandy
Blue Ark
DoctorGame15
PauloFR
thiagograssi
thiagograssi
PauloFR
Junim
anizioNoob
lucasfera15
Fábiow775
tom ramber
MateusWTP
zBanidor
tom ramber
PauloFR
Willian Wii
Willian Wii
silva75
zZAndersonZz
sabbath
Marc7
thiagograssi
rafaelllsd
MarcosSchultz
Luiz Mauro TCC
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
CanabravaBR
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Zecandy
AndyShow
Pulitano
artplayer
niao
vegasbr
Manawydan
rafaelllsd
joabr
Blue Ark
Zecandy
AndyShow
regisbaldo
MarcosSchultz
joabr
joabr
tom ramber
lordstrik
Callyde Jr
PauloFR
cron
BananaSmith
LukiAli
Zecandy
LukiAli
erick.q.faria
dstaroski
hackernew404
LuizFixa3D
John Rambo
Marc7

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 : 361
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?

MarcosSchultz
Administrador

Masculino PONTOS : 7852
REPUTAÇÃO : 1072
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

John Rambo
Moderador

Masculino PONTOS : 1541
REPUTAÇÃO : 287
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 : 361
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

MarcosSchultz
Administrador

Masculino PONTOS : 7852
REPUTAÇÃO : 1072
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 : 361
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

MarcosSchultz
Administrador

Masculino PONTOS : 7852
REPUTAÇÃO : 1072
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 : 361
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