// Update is called once per frame
    void Update()
    {
        //messenger.messengerTxt = "<color=white>"+Time.time.ToString()+ "\nTempoParaMarcadores: "+tempoParaMarcadores.ToString()+" if- "+teste.ToString()+"</color>";

        if (circuitoImpossivel)
        {
            return;
        }

        if (frisbeGO)
        {
            frisbeScrpt.gameObject.SetActive(imDetector.isFound);
        }

        if (tempoParaMarcadores < Time.time)
        {
            if (gerenciadorCircuito.TemProximo())
            {
                CanvasInGame.SetActive(true); CanvasFimGame.SetActive(false);
                if (ultimoMarcador != gerenciadorCircuito.MarcadorAtual())
                {
                    int       marcadorAct = gerenciadorCircuito.MarcadorAtual();
                    Transform imTarget    = listaIMTargetScript.Get(marcadorAct);
                    //print ("Estamos no marcador no: " + marcadorAct);
                    listaIMTargetScript.AtivaTarget(marcadorAct);
                    mascoteGuia.ApontarMarcador(marcadorAct);
                    imDetector = listaIMTargetScript.LerReadTarget(marcadorAct);
                    identificaJeb.InsereImTarget(imTarget.gameObject);
                    criaFrisbe();
                    atualizaAlvo(imTarget.GetChild(imTarget.childCount - 1).gameObject);
                    ultimoMarcador = marcadorAct;
                }
                if (imDetector.isFound)
                {
                    if (!frisbeScrpt.isTrowed)
                    {
                        frisbeScrpt.Posicionar(identificaJeb.PorcentagemEsticado());
                    }

                    if (identificaJeb.DobrouBraco())
                    {
                        if (identificaJeb.EsticouBraco())
                        {
                            if (identificaJeb.DobrouNovamenteBraco())
                            {
                                frisbeScrpt.Arremessar();
                                gerenciadorCircuito.AvancarPasso();
                                if (!gerenciadorCircuito.TemProximo())
                                {
                                    mascoteGuia.FinalizaPassos();
                                }
                                tempoParaMarcadores = Time.time + 2.0f;
                            }
                            else
                            {
                                mascoteGuia.DobrarBracos();
                            }
                        }
                        else
                        {
                            mascoteGuia.EsticarBracos();
                        }
                    }
                    else
                    {
                        mascoteGuia.DobrarBracos();
                    }
                }
                else
                {
                    mascoteGuia.ApontarMarcador(gerenciadorCircuito.MarcadorAtual());
                }
            }
            else
            {
                if (!estaFinalizado)
                {
                    CanvasInGame.SetActive(false); CanvasFimGame.SetActive(true);
                    //mascoteGuia.FinalizarFase (tempoDeJogoIni, salvador.LeTempoMaximoFase("####FASEATUAL####"));
                    mascoteGuia.FinalizarFase(tempoDeJogoIni, 85.0f);
                    estaFinalizado = true;
                }
            }
        }
        else
        {
            if (gerenciadorCircuito.TemProximo())
            {
                mascoteGuia.AvisaEstagio(gerenciadorCircuito.PassoAtual() + 1, gerenciadorCircuito.PassoMaximo());
            }
        }
    }