void Awake() { // atualiza os recordes if (PlayerPrefs.HasKey("recorde")) { recorde = PlayerPrefs.GetInt("recorde"); } else { recorde = 1; } txtRecorde.text = recorde.ToString(); // prepara o primeiro hexagono StartCoroutine(Foca()); // inicializa vetor de cores uma única vez Hexagono_Controlador.IniciaCores(); // inicia o tutorial, se necessário if (PlayerPrefs.GetInt("tutorial") == 0) { StartCoroutine(Tutorial()); } txtNomeLocal.text = PlayerPrefs.GetString("ultimoRecordista"); // liga a vibração se for pra ligar #if UNITY_ANDROID SetVibracao(PlayerPrefs.GetInt("vibracao") == 1); #endif }
private static void AddLigados(Hexagono_Controlador hex) { if (ligados == null) { ligados = new List <Hexagono_Controlador> (); } ligados.Add(hex); }
private IEnumerator ReiniciaRoutine() { Time.timeScale = 1; animFadeIn.SetTrigger("FadeOut"); yield return(new WaitForSeconds(0.52f)); estado = 0; Hexagono_Controlador.Reiniciar(); SceneManager.LoadScene(0); }
public void Toque() { if (emTutorial) { esperandoToque = false; } foco = atual; foco.Liga(); StartCoroutine(foco.GiraEmVolta()); StartCoroutine(Foca()); }
public void AddPontos() { pontos++; animPontos.SetTrigger("up"); if (tabelaScores != null && tabelaScores.Length > 0) { if (proxRecordeIndice >= 0) { if (proxRecordeIndice > 0) { txtRecorde.text = (pontos - recorde - 1).ToString(); if (pontos > proxRecorde && !emTutorial) { Avisa(tabelaScores[proxRecordeIndice].nome + " superado!"); ProximoDesafio(); } } } else { txtRecorde.text = "new"; } } else if (pontos <= recorde) { txtRecorde.text = (pontos - recorde - 1).ToString(); txtNomeRecorde.text = "voce"; } else { txtRecorde.text = "new"; txtNomeRecorde.text = "voce"; } txtPontos.text = pontos.ToString(); // adiciona nova cor pra aumentar dificuldade if (pontos % 10 == 0) { Hexagono_Controlador.AddCor(); } }
public void AddPontos() { pontos++; animPontos.SetTrigger("up"); if (proxRecordeIndice >= 0) { if (pontos > proxRecorde && !emTutorial) { Avisa(tabelaRecordes[proxRecordeIndice].nome + " superado!"); ProximoDesafio(); } } txtPontos.text = pontos.ToString(); // adiciona nova cor pra aumentar dificuldade if (pontos % 10 == 0) { Hexagono_Controlador.AddCor(); } }
private IEnumerator Tutorial() { // desabilita poluição da gui e prepara emTutorial = true; Time.timeScale = 0.5f; botaoPausa.SetActive(false); txtPontos.gameObject.SetActive(false); txtRecorde.transform.parent.gameObject.SetActive(false); string tmpNomeRecorde = txtNomeRecorde.text; int tmpRecorde = recorde; txtNomeRecorde.text = ""; ResetaPontos(); // apresenta como jogar yield return(StartCoroutine(PassoTutorial("toque na tela para ligar o hexágono em foco"))); // apresenta objetivo yield return(StartCoroutine(PassoTutorial("se os hexágonos ligados forem da mesma cor, você pontua"))); // espera a pessoa pontuar Avisa("tente pontuar!\nligue hexágonos da mesma cor", true); while (pontos < 2) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // apresenta os pontos txtPontos.gameObject.SetActive(true); yield return(StartCoroutine(PassoTutorial("seus pontos aparecem lá em cima"))); // apresenta os recordes e coloca um recorde temporario recorde = 4; txtRecorde.text = (pontos - recorde - 1).ToString(); txtRecorde.transform.parent.gameObject.SetActive(true); yield return(StartCoroutine(PassoTutorial("os pontos que faltam para bater o recorde aparecem abaixo"))); // espera bater o recorde Avisa("bata o recorde!", true); while (pontos < 5) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // apresenta os coringas Hexagono_Controlador.TodosSaoCoringas(true); yield return(StartCoroutine(PassoTutorial("hexagonos que mudam de cor são coringas"))); Hexagono_Controlador.TodosSaoCoringas(false); // apresenta o zoomout Avisa("toque na parte superior da tela para ter uma visão geral", true); esperandoAcao = true; while (esperandoAcao) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // apresenta a pausa botaoPausa.SetActive(true); Avisa("toque nas barras lá em cima para pausar", true); while (Time.timeScale != 0) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // finaliza Avisa("tutorial completo!"); // volta o jogo ao normal para continuar rodada // habilita essa parte se conseguir consertar os bugs que isso causa (provavelmente por causa dos coringas) //txtNomeRecorde.text = tmpNomeRecorde; recorde = tmpRecorde; //txtRecorde.text = tmpRecorde.ToString(); //Time.timeScale = 1; // inserir conquista emTutorial = false; PlayerPrefs.SetInt("tutorial", 1); // -- essa parte é temporaria pelo comentario de cima yield return(new WaitForSeconds(1.5f)); Reiniciar(); // -- }
private IEnumerator Tutorial() { // desabilita poluição da gui e prepara emTutorial = true; Time.timeScale = 0.5f; botaoPausa.SetActive(false); txtPontos.gameObject.SetActive(false); txtRecorde.transform.parent.gameObject.SetActive(false); ResetaPontos(); // apresenta como jogar yield return(StartCoroutine(PassoTutorial("Toque na tela para ligar o hexágono em foco"))); // apresenta objetivo yield return(StartCoroutine(PassoTutorial("Se os hexágonos ligados forem da mesma cor, você pontua"))); txtPontos.gameObject.SetActive(true); // espera a pessoa pontuar Avisa("Ligue hexágonos da mesma cor!\nFaça 5 pontos!", true); while (pontos < 5) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // apresenta os pontos txtPontos.gameObject.SetActive(true); yield return(StartCoroutine(PassoTutorial("Seus pontos aparecem lá em cima"))); // apresenta os recordes e coloca um recorde temporario txtRecorde.transform.parent.gameObject.SetActive(true); yield return(StartCoroutine(PassoTutorial("Os pontos que faltam para bater o recorde aparecem abaixo"))); yield return(new WaitForSeconds(0.5f)); // apresenta os coringas Hexagono_Controlador.TodosSaoCoringas(true); yield return(StartCoroutine(PassoTutorial("Hexagonos que mudam de cor são coringas"))); Hexagono_Controlador.TodosSaoCoringas(false); // apresenta o zoomout Avisa("Toque na parte superior da tela para ter uma visão geral", true); esperandoAcao = true; while (esperandoAcao) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // apresenta a pausa botaoPausa.SetActive(true); Avisa("Toque nas barras lá em cima para pausar", true); while (Time.timeScale != 0) { yield return(null); } Avisa("", false); yield return(new WaitForSeconds(0.5f)); // finaliza Avisa("Tutorial completo!"); // inserir conquista emTutorial = false; PlayerPrefs.SetInt("tutorial", 1); // -- essa parte é temporaria pelo comentario de cima yield return(new WaitForSeconds(1.5f)); Reiniciar(); // -- }