예제 #1
0
    public void EmitirEfeitoSonoro(EfeitosSonoros efeito)
    {
        GameObject novaCaixa = Instantiate <GameObject>(
            new GameObject(string.Concat("Caixa de Som ", efeito.ToString())),
            Vector3.zero,
            Quaternion.identity
            );

        AudioSource novaCaixa_as = novaCaixa.AddComponent <AudioSource>();

        novaCaixa_as.playOnAwake = false;

        if (
            efeito == EfeitosSonoros.Bar ||
            efeito == EfeitosSonoros.Escritorio
            )
        {
            novaCaixa_as.loop = true;
        }
        else
        {
            novaCaixa_as.loop = false;
        }

        novaCaixa_as.clip = ClipeCorrespondente(efeito);
        novaCaixa_as.Play();
    }
예제 #2
0
    public AudioClip clipebatidaCarro;  // 12


    AudioClip ClipeCorrespondente(EfeitosSonoros efeito)
    {
        switch (efeito)
        {
        case EfeitosSonoros.Passos:      return(clipePassos);          // 0

        case EfeitosSonoros.Escritorio:  return(clipeEscritorio);      // 1

        case EfeitosSonoros.Bar:         return(clipeBar);             // 2

        case EfeitosSonoros.Buzina:      return(clipeBuzina);          // 3

        case EfeitosSonoros.SomCama:     return(clipeSomCama);         // 4

        case EfeitosSonoros.Chuva:       return(clipeChuva);           // 5

        case EfeitosSonoros.Chuveiro:    return(clipeChuveiro);        // 6

        case EfeitosSonoros.F:           return(clipeF);               // 7

        case EfeitosSonoros.G:           return(clipeG);               // 8

        case EfeitosSonoros.Celular:     return(clipeCelular);         // 9

        case EfeitosSonoros.lavarRosto:  return(clipeLavarRosto);      // 10

        case EfeitosSonoros.Dirigindo:   return(clipeDirigindo);       // 11

        case EfeitosSonoros.batidaCarro: return(clipebatidaCarro);     // 12
        }
        return(null);
    }
예제 #3
0
    public void FecharRealizacoes()
    {
        if (Dados.linguaAtual == 1)
        {
            if (painelRealizacoes)
            {
                if (podeTocar)
                {
                    EfeitosSonoros.Tocar();
                }
                painelRealizacoes.SetActive(false);
            }
        }
        else
        {
            if (painelRealizacoes)
            {
                if (podeTocar)
                {
                    EfeitosSonoros.Tocar();
                }
                painelRealizacoes.SetActive(false);
            }

            /*
             * if (painelRealizacoes_en)
             * {
             *      if (podeTocar)
             *              EfeitosSonoros.Tocar();
             *      painelRealizacoes_en.SetActive(false);
             * }
             * //*/
        }
    }
예제 #4
0
 //
 public void AbrirMissoes()
 {
     if (Dados.linguaAtual == 1)
     {
         if (painelMissoes)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelMissoes.SetActive(true);
         }
     }
     else
     {
         if (painelMissoes_en)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelMissoes_en.SetActive(true);
         }
     }
 }
예제 #5
0
 public void FecharCreditos()
 {
     if (Dados.linguaAtual == 1)
     {
         if (painelCreditos)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelCreditos.SetActive(false);
         }
     }
     else
     {
         if (painelCreditos_en)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelCreditos_en.SetActive(false);
         }
     }
 }
예제 #6
0
 //
 public void AbrirConfig()
 {
     if (Dados.linguaAtual == 1)
     {
         if (painelConfig)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelConfig.SetActive(true);
         }
     }
     else
     {
         if (painelConfig_en)
         {
             if (podeTocar)
             {
                 EfeitosSonoros.Tocar();
             }
             painelConfig_en.SetActive(true);
         }
     }
 }
예제 #7
0
 public EfeitosSonoros()
 {
     if (instancia == null)
     {
         instancia = this;
     }
 }
 private void OnCollisionEnter(Collision collision)
 {
     if (collision.collider.tag == "Zoombie")
     {
         EfeitosSonoros.TocarSom("Death Scream", ControleDeVolumes.volume_de_efeitos_sonoros);
     }
 }
예제 #9
0
 //
 public void TelaJogo()
 {
     if (podeTocar)
     {
         EfeitosSonoros.Tocar();
     }
     Application.LoadLevel(Constantes.telaJogo);
 }
예제 #10
0
 public void FecharPlacar()
 {
     if (painelPlacar)
     {
         EfeitosSonoros.Tocar();
         painelPlacar.SetActive(false);
     }
 }
예제 #11
0
 public void Morreu()
 {
     if (isAlive)
     {
         EfeitosSonoros.TocarSom("Death Scream", ControleDeVolumes.volume_de_efeitos_sonoros);
         isAlive = false;
     }
     else
     {
     }
 }
예제 #12
0
 public void FecharDebug()
 {
     if (painelDebug)
     {
         if (podeTocar)
         {
             EfeitosSonoros.Tocar();
         }
         painelDebug.SetActive(false);
     }
 }
예제 #13
0
 //
 public void AbrirDebug()
 {
     if (painelDebug)
     {
         if (podeTocar)
         {
             EfeitosSonoros.Tocar();
         }
         painelDebug.SetActive(true);
     }
 }
예제 #14
0
 //
 public void AbrirPlacar()
 {
     if (painelPlacar)
     {
         if (podeTocar)
         {
             EfeitosSonoros.Tocar();
         }
         painelPlacar.SetActive(true);
     }
 }
예제 #15
0
    public void TelaMenu()
    {
        if (podeTocar)
        {
            EfeitosSonoros.Tocar();
        }


        GerJogo.Salvar();
        //GerJogo.Limpar();

        Application.LoadLevel(Constantes.telaMenu);
    }
예제 #16
0
    void Awake()
    {
        if (_instancia == null || _instancia == this)
        {
            _instancia = this;
            DontDestroyOnLoad(gameObject);

            tocador = GetComponent <AudioSource>();
            sons    = new AudioClip[5];
            sons[0] = somSomar;
            sons[1] = somSubtrair;
            sons[2] = somMultiplicar;
            sons[3] = somZerar;
            sons[4] = somInterface;
        }
        else
        {
            DestroyImmediate(gameObject);
        }
    }
예제 #17
0
    //
    public void AbrirRealizacoes()
    {
        if (Dados.linguaAtual == 1)
        {
            if (painelRealizacoes)
            {
                if (podeTocar)
                {
                    EfeitosSonoros.Tocar();
                }
                painelRealizacoes.SetActive(true);
                MostrarRealizacoes.VerificarCor();
            }
        }
        else
        {
            if (painelRealizacoes)
            {
                if (podeTocar)
                {
                    EfeitosSonoros.Tocar();
                }
                painelRealizacoes.SetActive(true);
                MostrarRealizacoes.VerificarCor();
            }

            /*
             * if (painelRealizacoes_en)
             * {
             *      if (podeTocar)
             *              EfeitosSonoros.Tocar();
             *      painelRealizacoes_en.SetActive(true);
             *      MostrarRealizacoes.VerificarCor();
             * }
             * //*/
        }
    }
예제 #18
0
 public void Som()
 {
     Dados.somLigado = !Dados.somLigado;
     VerificarSom();
     EfeitosSonoros.Tocar();
 }
예제 #19
0
 public void Musica()
 {
     Dados.musicaLigado = !Dados.musicaLigado;
     VerificarMusica();
     EfeitosSonoros.Tocar();
 }
예제 #20
0
    static void JuntarObjetos(GerBotao parado, GerBotao juntado)
    {
        long novoValor = 0;
        long pontos    = 0;

        int pospar = PegarPosicao(parado);              //parado.posicaoGrade;
        int posjun = PegarPosicao(juntado);             //juntado.posicaoGrade;

        bool mul = false;

        if (juntado.multiplicou)
        {
            parado.multiplicou = true;
        }

        Tipos.Botao tipo = juntado.tipo;

        if (parado.tipo == Tipos.Botao.Multiplicador ||
            juntado.tipo == Tipos.Botao.Multiplicador)
        {
            novoValor = parado.valor * juntado.valor;
            if (novoValor > 0 && novoValor > Dados.blocoMaiorValor)
            {
                novoValor = Dados.blocoMaiorValor;
            }
            else if (novoValor < 0 && novoValor < -Dados.blocoMaiorValor)
            {
                novoValor = -Dados.blocoMaiorValor;
            }

            parado.multiplicou = true;

            if (parado.tipo == Tipos.Botao.Multiplicador &&
                juntado.tipo == Tipos.Botao.Multiplicador)
            {
                mul = true;
            }
        }
        else
        {
            novoValor = parado.valor + juntado.valor;
            if (novoValor > 0 && novoValor > Dados.blocoMaiorValor)
            {
                novoValor = Dados.blocoMaiorValor;
            }
            else if (novoValor < 0 && novoValor < -Dados.blocoMaiorValor)
            {
                novoValor = -Dados.blocoMaiorValor;
            }
        }

        long [] valores = new long[2];
        valores[0] = parado.valor;
        valores[1] = juntado.valor;
        VerificarRealizacoes(
            Realizacao.Tipo.Fundir, valores);
        VerificarRealizacoes(
            Realizacao.Tipo.FundirIndiferente, valores);

        LiberarPosicao(posjun);

        //objetos.Remove(juntado);
        juntado.Destruir();

        if (novoValor == 0)
        {
            EfeitosSonoros.Tocar(EfeitosSonoros.Tipos.Zerar);

            adicionarNovoBlocoAleatorio = true;
            //AdicionarEmPosicaoAleatoria();

            if (parado.valor < 0)
            {
                pontos = -parado.valor;
            }
            else
            {
                pontos = parado.valor;
            }
            //objetos.Remove(parado);
            parado.Zerou();
            LiberarPosicao(pospar);

            VerificarMissao(missaoZerar, pontos);
        }
        else
        {
            switch (tipo)
            {
            case Tipos.Botao.Positivo:
                EfeitosSonoros.Tocar(EfeitosSonoros.Tipos.Somar);
                break;

            case Tipos.Botao.Negativo:
                EfeitosSonoros.Tocar(EfeitosSonoros.Tipos.Subtrair);
                break;

            case Tipos.Botao.Multiplicador:
                EfeitosSonoros.Tocar(EfeitosSonoros.Tipos.Multiplicar);
                break;
            }


            valores    = new long[1];
            valores[0] = novoValor;

            long absNovoValor = novoValor;
            if (novoValor < 0)
            {
                absNovoValor = -novoValor;
            }

            if (mul)
            {
                VerificarMissao(
                    missaoMultiplicador, absNovoValor);
            }
            else
            {
                VerificarMissao(missaoBloco, absNovoValor);

                if (parado.multiplicou == false)
                {
                    VerificarRealizacoes(
                        Realizacao.Tipo.BlocoSemMultiplicar, valores);
                }
            }

            if (parado.tipo != Tipos.Botao.Multiplicador)
            {
                VerificarRealizacoes(
                    Realizacao.Tipo.BlocoNormal, valores);
                VerificarRealizacoes(
                    Realizacao.Tipo.BlocoMaiorQue, valores);
                VerificarRealizacoes(
                    Realizacao.Tipo.BlocoAbsoluto, valores);
            }

            parado.Mudar(novoValor, mul);
            parado.Brilhar();

            if (Random.value <= Dados.chanceCriarNovoBloco)
            {
                //AdicionarEmPosicaoAleatoria();
                adicionarNovoBlocoAleatorio = true;
            }
        }

        if (Dados.tutorialCompleto == false)
        {
            pontos = 0;
        }

        //Cria funçao para mostrar pontos ganhos.
        Dados.pontosAtuais += pontos;
        VerificarMissao(missaoPlacar, Dados.pontosAtuais);

        valores    = new long[1];
        valores[0] = Dados.pontosAtuais;
        VerificarRealizacoes(
            Realizacao.Tipo.PlacarExato, valores);

        /*
         * Utilidade.DebugMensagem(
         *      "Pontos recebidos: "+pontos +
         *      "; Nova pontuação: "+Dados.pontosAtuais+
         *      "; Resets: " + Dados.quantidadeDeResets +
         *      "; Pontos totais: "+Dados.pontosTotaisReais);
         * //*/

        VerificarReset(pontos);

        valores = new long[1];
        if (Dados.pontosTotaisReais < (ulong)Dados.pontosParaReset)
        {
            valores[0] = (long)Dados.pontosTotaisReais;
        }
        else
        {
            valores[0] = Dados.pontosParaReset;
        }
        VerificarRealizacoes(
            Realizacao.Tipo.Placar, valores);

        AjeitarResets();

        List <long> listaValores = new List <long>();
        string      vs           = "Valores:";

        foreach (GerBotao bloco in objetos)
        {
            if (bloco == null)
            {
                continue;
            }
            if (bloco.tipo != Tipos.Botao.Multiplicador &&
                bloco.tipo != Tipos.Botao.Zero)
            {
                vs += " " + bloco.valor;
                listaValores.Add(bloco.valor);
            }
        }
        VerificarRealizacoes(
            Realizacao.Tipo.VariosBlocos, listaValores.ToArray());
        //Utilidade.DebugMensagem (vs);

        valores    = new long[1];
        valores[0] = (long)Dados.quantidadeDeResets;
        VerificarRealizacoes(Realizacao.Tipo.Zerar, valores);

        valores    = new long[1];
        valores[0] = 1;
        foreach (Missao missao in Dados.missoes)
        {
            if (missao.Completa() == false)
            {
                valores[0] = 0;
                break;
            }
        }
        VerificarRealizacoes(
            Realizacao.Tipo.CompletarMissoes, valores);
    }
예제 #21
0
    void Start()
    {
        Random.seed = 45;
        somTocando  = false;

        refCarro = GameObject.Find("Carro");
        //Interface
        imgLoiraAtual = GameObject.FindGameObjectWithTag("ImgLoiraD");        //Retrovisor loira

        InterfaceBussolaT = GameObject.FindGameObjectWithTag("InterBussola").transform;
        PontoCemiterioT   = GameObject.FindGameObjectWithTag("PontoCemiterio").transform;

        fuelMarker = GameObject.FindGameObjectWithTag("PaiInterFuelMark");//Marcador de combustivel

        scriptSom   = GameObject.Find("FonteEfeitos").GetComponent <EfeitosSonoros>();
        scriptCarro = GameObject.Find("Carro").GetComponent <ControleCarro>();

        try
        {
            refStatus = GameObject.Find("Status").GetComponent <Status>();
        }
        catch { refStatus = null; }

        if (refStatus != null)
        {
            tempoJogo = refStatus.tempoDuracaoFaseAtual;//Atribui o tempo da fase no gerente baseado no que tempo presente no objeto status
        }
        else
        {
            tempoJogo = 180f;
        }

        tempoEachPhase = (float)tempoJogo / 4.1f;      //44 segundos e pouco para cada fase

        estadoAtualLoira     = -1;
        maxFrameEstado       = 0;
        displayGood          = false;
        displayBad           = false;
        trocouState          = false;
        podeDecrementarTempo = true;
        ChangeLoiraState(false);        //Carrega o array de texturas da loira

        keepUpdatingTimer = true;
        keepCounterLoop   = true;

        endGame    = false;
        venceuGame = false;

        showTimer = true;
        Camera cameraT = GameObject.Find("Main Camera").GetComponent <Camera>();

#if DEBUG_MD
        xOld = x; yOld = y;
        Vector3 vec3RetT = cameraT.ViewportToScreenPoint(new Vector3(x, y, 1f));         // Viewport ali e normalizada de 0f a 1f do canto inverior esquerdo ate o canto superior direito;
#else
        Vector3 vec3RetT = cameraT.ViewportToScreenPoint(new Vector3(0.095f, 0.955f, 1f));
        retanguloTimer = new Rect(vec3RetT.x, vec3RetT.y, 80, 40);       //new Rect( Screen.width*0.11f , Screen.height * 0.96f, 80,40);
#endif
        enchendoIndicadorCombustivel = false;
        diminuirFuelAfterFill        = false;
        quantVezesDimFuelAfterFill   = 0;

        //Carrega a Skin da gui
        SkinGUIDigital = Resources.Load("Font/DS-DIGIISkin") as GUISkin;

        LoadEventsPlane();


        StartCoroutine(AtualizadorContador());//Inicializa os contadores de tempo
    }
예제 #22
0
 public void TocarEfeitoSonoro(string qual_som)
 {
     EfeitosSonoros.TocarSom(qual_som);
 }
예제 #23
0
 public void TocarSomDeInterface(string qual_som)
 {
     EfeitosSonoros.TocarSomDeInterface(qual_som);
 }