Exemple #1
0
    /// <summary>
    /// Destrói o distrator
    /// </summary>
    public void DestroyDistractor()
    {
        Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto);        //Muda o curso de volta ao normal, pois a função OnPointerExit não funciona quando o objeto é destruído
        numDistractors--;
        if (numDistractors == 0 /*&& LevelController.TimeIsRunning*/) //Verifica o número de distradores na cena para ver se pode desbloquear os botões
        {
            LevelController.bloqueiaBotao = false;
            silabaControl.CompleteEmptyTextSlots();

            // Instancia a seta indicadora quando todos os distratores são destruidos
            SetaIndicadora.SetaSetup();
            //SetaIndicadora.DestroiSeta();
            SetaIndicadora.IndicarPos();
        }
        gameObjectPosition = new Vector3(gameObject.transform.position.x, gameObject.transform.position.y, gameObject.transform.position.z);
        Instantiate(explosion, gameObjectPosition, Quaternion.identity);
        Destroy(gameObject);
    }
Exemple #2
0
    /// <summary>
    /// Escolhe uma silaba aleatoriamente dentro dos arquivos de áudio carregados em "silabasNivelAtual" e a toca
    /// </summary>
    public void TocarSilaba()//escolhe e toca uma sílaba aleatória (random nos arquivos de áudio)
    {
        //randomNumber = Random.Range(0, silabasNivelAtual.Length);
        randomNumber = RandomNotSoRandom();
        LevelController.PalavraSelecionada = silabasNivelAtual[randomNumber].name.ToUpper();//pega a sílaba (nome do arquivo sem a extensão) aleatóriamente
        // Guarda a palavra selecionada para o jogador
        DataManager.statisticsData.palavraSelecionada = LevelController.PalavraSelecionada;

        // Verifica se a PalavraSelecionada deve ser separada em sílabas ou letras
        if (LevelController.eSilaba)
        {
            LevelController.SeparaSilabas();
        }
        else
        {
            LevelController.SeparaLetras();
        }

        IsPlanetLetterSetup();

        silabaAtual = silabasNivelAtual[randomNumber] as AudioClip;
        wordTime    = silabaAtual.length;
        soundManager.PlaySilaba(silabaAtual);
        StartCoroutine(WaitForSound(silabaAtual.length));
        StartCoroutine(timer.SetTimeIsRunning(silabaAtual));

        buttonDicaAudio.ActiveButton();
        buttonDicaVisual.ActiveButton();

        if (stageManager.blockTextSlot)
        {
            BloqueiaEmptyTextSlots();
            StartCoroutine(WaitAndWriteEmptySlots());
        }

        // Se não for o caso de ter distratores, instancia a seta agora (se tiver distratodres, instancia no script Distractor)
        if (!GameObject.Find("Distractor Creator"))
        {
            SetaIndicadora.SetaSetup();
            //SetaIndicadora.DestroiSeta();
            SetaIndicadora.IndicarPos();
        }
    }
Exemple #3
0
    /// <summary>
    /// Se o teclado digita estiver liberado, recebe a letra digitada e concatena com as previamente digitadas (se não atingiu o máximo de letras)
    /// Após concatenar, verifica se pode liberar o botão para confirmar a resposta
    /// </summary>
    public void buttonPressed()
    {
        if (!LevelController.bloqueiaBotao)
        {
            click.Play(0); // toca som de apertando o botao (click_tecla01)

            int i = 0;

            // Encontra em qual silaba está (i = silaba em que está - 1)
            while (i < LevelController.textSlots && LevelController.inputText[i] != null && LevelController.originalText[i].Length <= LevelController.inputText[i].Length)
            {
                i++;
            }

            // Verificar se a silaba em questão está completa (todas as letras) e se pode liberar o botão confirma
            if (i < LevelController.textSlots)
            {
                if (LevelController.inputText[i] == null || LevelController.inputText[i].Length < LevelController.originalText[i].Length)
                {
                    LevelController.inputText[i] = string.Concat(LevelController.inputText[i], currentButton.name);
                }
                if (stageManager.textSlots == i + 1 && LevelController.inputText[i].Length == LevelController.originalText[i].Length)
                {
                    LevelController.BotaoConfirmaResposta = true;
                }
            }

            // Verifica se há mais algum espaço a ser preenchido
            while (i < LevelController.textSlots && LevelController.inputText[i] != null && LevelController.originalText[i].Length <= LevelController.inputText[i].Length)
            {
                i++;
            }
            if (i == LevelController.textSlots)
            {
                LevelController.BotaoConfirmaResposta = true;
            }

            SetaIndicadora.DestroiSeta();
            SetaIndicadora.IndicarPos();
        }
    }
Exemple #4
0
    /// <summary>
    /// Verifica se tem alguma silaba escrita e apaga somente a ultima silaba escrita
    /// </summary>
    public void buttonPressed()
    {
        // Verifica se os botões não estão bloqueados
        if (!LevelController.bloqueiaBotao)
        {
            //click.Play(0);


            // Encontra o máximo de sílabas existentes menos 1 - vetor inicia em 0
            int           i             = LevelController.textSlots - 1;
            SilabaControl silabaControl = SilabaControl.instance;

            // Varre o vetor a partir do final procurando a última sílaba digitada
            while (i > -1)
            {
                // Se o vetor é vazio, não faz nada
                if (LevelController.inputText[i] != null)
                {
                    // Se não for vazio, verifica se existe alguma letra na posição i do vetor
                    if (LevelController.inputText[i].Length > 0)
                    {
                        // Se tem letra, ve se pode apagar
                        if (silabaControl.isPlanetLetter[i])
                        {
                            // Apaga e sai
                            LevelController.inputText[i] = "";//.Remove(LevelController.silabasDigitadas[1].Length - 1);
                            break;
                        }
                    }
                }

                i--;
            }

            // Bloqueia o botão de confirmar resposta, pois todas as sílabas não foram digitadas
            LevelController.BotaoConfirmaResposta = false;
        }
        SetaIndicadora.DestroiSeta();
        SetaIndicadora.IndicarPos();
    }