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:
fazer o player perde vida e sua barra de vida descer conforme o dano
[TUTORIAL] Como fazer um TELEPORTE
Script Shader
Sistema de frio??
Como colocar o um CORPO funcional no FPS
Som ambiente,Interação de objetos unity 3D
Telemportar objeto?
[RESOLVIDO] Compilar para android?
(pedido) script para ativar física
Linkar Meshes das Rodas!
Quais melhores estratégias para divulgação de um jogo indie?
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Flying Bird - PlayStore
Direção da câmera ser para onde o player vai ao apertar a tecla de ir para frente!!
Props Animations Asset
[TUTORIAL] Sistema de DIA E NOITE completo, com luzes noturnas e SISTEMA DE NUVENS
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Trocar a textura de um objeto pelas texturas de uma lista ( array ) seguindo a ordem da mesma.
MouseOver alterar de cores solidas para texturas alterar script
Como tiro a tela de seleção de resolução que aparece quando abro o jogo?
VENHAM CONTEMPLAR CUBOID! E entrem para a equipe!
chamare indice de uma List<> em outro script
Unity Assets Duvida
pessoal prefab para colider ou um raycast
[RESOLVIDO] Help. texto através dos objetos unity
[TUTORIAL] C# .NET | Instalar IDE para compilar c# para outras plataformas
Mudar Cor do Veiculo!
[RESOLVIDO]tirar vida do inimigo com click do mause
Baixos Brasil - Jogo de Carro Brasileiro!
[TUTORIAL] Acessar variáveis de outros scripts, variáveis estáticas (javaScript)
Por que os modelos que importo para o unity desaparecem?
Falha de Segurança na Unity
[TUTORIAL] Gerar números aleatórios SEM REPETIR (método com lista)
Cuboid 0.8, divulguem por favor
Tutorial: jogo estilo minecraft
Meu Jogo em desenvolvimento
Verificar texto De um Input Field
Como Separar Variaveis ?
Duvida sobre script
Search the Rats update 1.2
Erro unity
Chamando animação por script
Como fazer objeto voltar a posição inicial? só que ele estará "em movimento"
Button Facebook Mobile!
Lancei um jogo na Play Store - Tic Tac ToeSP.
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
10 ASSETS GRATUITOS PARA UNITY 5
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
Detectar se uma variável mudou e a quanto tempo ela mudou
Como posso criar um inputfield alfabtical alguem sabe?
ativar animação ao apertar botão (android)
Ai Enemy Inimigo Parando do nada
Duvida Extranhicima
gameobject transparente
[TUTORIAL] Tutorial Unity 3D Movimentação de Personagem com Botões UI
Menu de Construções estilo jogo "Banished"
Instanciar
-[COMO IMPLEMENTO UMA ARRAY NESTE SCRIPT?]-
[RESOLVIDO] Inteligência Artificial (básica) - interação Rigidbody2D Collision
Sistema de Futebol(Chutar bola e carrega-la até o gol)
Jogo De Corrida Infinita (2D)[Mobile]
[TUTORIAL] Inimigo seguir e atacar Player ao encostar
Jogo crashando depois da build
[TUTORIAL] Adicionar força a um Rigidbody na direção onde o mouse está
Duvida com Script VIDA
Iniciar em Unity
Escolhendo cores com scroll "mouse"
[RESOLVIDO] Erro com Audio Source ???
Partindo Para Faculdade!
[DÚVIDA] COMO FAZER UM "TEXT" APARECER SÓ UMA VEZ QUANDO O GAME INICIAR?
Simple Touch Camera Script
Duvida sobre iluminação
Duplo personagem
Erro
Dúvida sobre Estado inicial
Jogo de Pesca (Física da Linha)
Water
[RESOLVIDO] ERRO SUN SHAFTS (script nao aparece)
Animações do Player. Como faço????
MAGIA SEGUIR ALVO COM TAG APOS SER INSTANCIADA
Formação de equipe para talvez um jogo Unturned+Battlegrounds - Unity c#
[DÚVIDA] FAZER JOGO ESTILO O ARROW.IO
[RESOLVIDO] Opções no menu?
[RESOLVIDO] Alguém poderia me ajudar a diminuir esse script?
Como fazer para o personagem ao sairdas delimitações da tela apareca no lado oposto?
Ajuda com script pra box collider
Sistema de combate estilo Runescape
[Gerenciador de fase aleatório]
Criar Rastro no personagem 2D estilo castlevania symphony of the night.
Qual unity usar?
[____AJUDE A TORNAR ESTE ASSET DE ANDROID GRATUITO!____]
Mensagem aparecer somente uma Vez!
Unity Remote na Unity 2017!
Como fazer duas cameras aparecerem?
como fazer uma fisica desse jeito?
[TUTORIAL] Mostrar Data e Hora atual do Computador em um texto
[TUTORIAL] RECOIL OU ANIMAÇÃO DE TIRO
Boas ideias, histórias... nem tanto: quem quer um roteirista?
IEnumerator Unity 2017
Hoje à(s) 4:27 pm
Hoje à(s) 1:37 pm
Hoje à(s) 1:37 pm
Hoje à(s) 1:24 pm
Hoje à(s) 1:19 pm
Hoje à(s) 1:13 pm
Hoje à(s) 12:18 pm
Hoje à(s) 11:01 am
Hoje à(s) 10:53 am
Hoje à(s) 10:42 am
Hoje à(s) 9:59 am
Hoje à(s) 9:50 am
Hoje à(s) 9:11 am
Hoje à(s) 8:44 am
Hoje à(s) 5:30 am
Hoje à(s) 12:25 am
Ontem à(s) 10:29 pm
Ontem à(s) 8:20 pm
Ontem à(s) 8:09 pm
Ontem à(s) 7:56 pm
Ontem à(s) 7:29 pm
Ontem à(s) 7:22 pm
Ontem à(s) 6:00 pm
Ontem à(s) 4:31 pm
Ontem à(s) 2:54 pm
Ontem à(s) 2:51 pm
Ontem à(s) 1:52 pm
Ontem à(s) 12:40 pm
Ontem à(s) 11:40 am
Ontem à(s) 11:11 am
Ontem à(s) 12:31 am
Ontem à(s) 12:22 am
Ontem à(s) 12:17 am
Ontem à(s) 12:17 am
Sab Ago 19, 2017 11:44 pm
Sab Ago 19, 2017 8:55 pm
Sab Ago 19, 2017 8:46 pm
Sab Ago 19, 2017 8:35 pm
Sab Ago 19, 2017 7:40 pm
Sab Ago 19, 2017 5:14 pm
Sab Ago 19, 2017 4:17 pm
Sab Ago 19, 2017 3:47 pm
Sab Ago 19, 2017 10:33 am
Sab Ago 19, 2017 10:25 am
Sab Ago 19, 2017 5:53 am
Sex Ago 18, 2017 10:20 pm
Sex Ago 18, 2017 10:00 pm
Sex Ago 18, 2017 8:39 pm
Sex Ago 18, 2017 6:39 pm
Sex Ago 18, 2017 3:01 pm
Sex Ago 18, 2017 6:01 am
Sex Ago 18, 2017 12:04 am
Qui Ago 17, 2017 10:22 pm
Qui Ago 17, 2017 9:55 pm
Qui Ago 17, 2017 9:48 pm
Qui Ago 17, 2017 9:42 pm
Qui Ago 17, 2017 4:22 pm
Qui Ago 17, 2017 3:38 pm
Qui Ago 17, 2017 2:54 pm
Qui Ago 17, 2017 2:35 pm
Qui Ago 17, 2017 1:14 pm
Qui Ago 17, 2017 12:51 pm
Qui Ago 17, 2017 12:48 pm
Qui Ago 17, 2017 11:47 am
Qui Ago 17, 2017 11:09 am
Qui Ago 17, 2017 7:46 am
Qua Ago 16, 2017 10:19 pm
Qua Ago 16, 2017 9:55 pm
Qua Ago 16, 2017 9:10 pm
Qua Ago 16, 2017 9:03 pm
Qua Ago 16, 2017 8:01 pm
Qua Ago 16, 2017 1:17 pm
Qua Ago 16, 2017 11:49 am
Qua Ago 16, 2017 8:01 am
Ter Ago 15, 2017 7:29 pm
Ter Ago 15, 2017 5:06 pm
Ter Ago 15, 2017 5:06 pm
Ter Ago 15, 2017 1:47 pm
Ter Ago 15, 2017 11:52 am
Ter Ago 15, 2017 6:21 am
Seg Ago 14, 2017 11:28 pm
Seg Ago 14, 2017 11:04 pm
Seg Ago 14, 2017 10:06 pm
Seg Ago 14, 2017 7:19 pm
Seg Ago 14, 2017 6:18 pm
Seg Ago 14, 2017 5:55 pm
Seg Ago 14, 2017 5:52 pm
Seg Ago 14, 2017 5:37 pm
Seg Ago 14, 2017 5:31 pm
Seg Ago 14, 2017 5:27 pm
Seg Ago 14, 2017 5:26 pm
Seg Ago 14, 2017 5:23 pm
Seg Ago 14, 2017 5:21 pm
Seg Ago 14, 2017 5:17 pm
Seg Ago 14, 2017 5:12 pm
Seg Ago 14, 2017 3:36 pm
Seg Ago 14, 2017 1:38 pm
Seg Ago 14, 2017 11:06 am
Seg Ago 14, 2017 9:46 am
contaska
Gabriel César CORINTHIANS
michelly
MRX
AndyShow
AndyShow
Callyde Jr
dstaroski
Zecandy
AndyShow
Strikegames
zZAndersonZz
dstaroski
dstaroski
Regis garcia
marconi
zZAndersonZz
SERGIOCS
Madness
Zecandy
cody0033
Valakinhas
ManoTrevor
Madness
BRGC
PauloFR
PauloFR
PauloFR
Duarte
tom ramber
cody0033
NyanHeavyBR
rafaelllsd
cody0033
cody0033
BRGC
Manawydan
ManoTrevor
arnaldojunior
mbppedro
Eduardoro39
BRGC
dstaroski
dstaroski
Strikegames
zOverLexYT
Bruno
dstaroski
Dom3000
MiguelLuiz
zZAndersonZz
Jhin
Dom3000
juliano001
deikson
MasterWizzard
Duarte
MrTFGamer1
MatheusNani
deikson
HeF Soft
getrudes12@gmail.com
BloodyBS
deikson
Bruno
dstaroski
SERGIOCS
Vinicius F.
Duarte
Gabriel César O
Henrique0102
Zecandy
Callyde Jr
dstaroski
ffabim
AndyShow
Phph09
glauco
Bruno
Callyde Jr
Bruno11playerG
Gabriel César O
cody0033
Unidade3d5
Pancinha20
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MrTFGamer1
Gabriel César O
Phph09
Weverton Borges da Silva

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 : 538
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 : 9512
REPUTAÇÃO : 1612
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 : 1984
REPUTAÇÃO : 407
Idade : 18
Á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 : 538
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 : 9512
REPUTAÇÃO : 1612
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 : 538
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 : 9512
REPUTAÇÃO : 1612
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 : 538
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