Beispiel #1
0
        public bool Update()
        {
            tempoDecorrido += Time.deltaTime;
            switch (fase)
            {
            case FaseDoAnimaPose.inicia:
                AplicadorDeCamera.cam.FocarPonto(10);
                if (tempoDecorrido > 1)
                {
                    InsereBrilho();
                    tempoDecorrido = 0;
                    fase           = FaseDoAnimaPose.brilho2;
                }
                break;

            case FaseDoAnimaPose.brilho2:
                if (tempoDecorrido > 1.1f)
                {
                    InsereBrilho();
                    tempoDecorrido = 0;
                    fase           = FaseDoAnimaPose.insereInfos;
                }
                break;

            case FaseDoAnimaPose.insereInfos:
                if (tempoDecorrido > 0.4f)
                {
                    PainelDeCriature PC = GameController.g.HudM.P_Criature;
                    GameController.g.HudM.Painel.AtivarNovaMens(
                        BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.tentaCapturar)[5] +
                        oCapturado.NomeEmLinguas
                        , 25);
                    PC.gameObject.SetActive(true);
                    PC.InserirDadosNoPainelPrincipal(oCapturado);

                    if (foiParaArmagedom)
                    {
                        ActionManager.ModificarAcao(GameController.g.transform, () => { ativarAcao = true; });
                        fase = FaseDoAnimaPose.mensDoArmagedom;
                    }
                    else
                    {
                        ActionManager.ModificarAcao(GameController.g.transform, () => { ativarAcao = true; });
                        fase           = FaseDoAnimaPose.finaliza;
                        tempoDecorrido = 0;
                    }
                }
                break;

            case FaseDoAnimaPose.mensDoArmagedom:
                if (ativarAcao || tempoDecorrido > TEMPO_DE_MENS_DE_CAPTURA)
                {
                    ativarAcao = false;
                    GameController.g.HudM.UmaMensagem.ConstroiPainelUmaMensagem(() =>
                    {
                        tempoDecorrido = 11;    // para finalizar imediatamente
                        fase           = FaseDoAnimaPose.finaliza;
                        ActionManager.ModificarAcao(GameController.g.transform, () => { ativarAcao = true; });
                    }, string.Format(BancoDeTextos.RetornaFraseDoIdioma(ChaveDeTexto.foiParaArmagedom),
                                     GameController.g.Manager.Dados.maxCarregaveis,
                                     oCapturado.NomeEmLinguas,
                                     oCapturado.CaracCriature.mNivel.Nivel
                                     ));
                }
                break;

            case FaseDoAnimaPose.finaliza:
                if (ativarAcao || tempoDecorrido > TEMPO_DE_MENS_DE_CAPTURA)
                {
                    ativarAcao = false;
                    animator.SetBool("travar", false);
                    GameController.g.HudM.Painel.EsconderMensagem();
                    GameController.g.HudM.P_Criature.gameObject.SetActive(false);
                    return(false);
                }
                break;
            }
            return(true);
        }
Beispiel #2
0
        new void Update()
        {
            base.Update();

            switch (fase)
            {
            case fasesDoArmagedom.mensInicial:
                AplicadorDeCamera.cam.FocarPonto(2, 8, -1, true);
                if (dispara.UpdateDeTextos(t, fotoDoNPC)
                    ||
                    dispara.IndiceDaConversa > t.Length - 2
                    )
                {
                    EntraFrasePossoAjudar();
                    LigarMenu();
                }
                break;

            case fasesDoArmagedom.escolhaInicial:
                AplicadorDeCamera.cam.FocarPonto(2, 8, -1, true);
                if (!dispara.LendoMensagemAteOCheia())
                {
                    GameController.g.HudM.Menu_Basico.MudarOpcao();
                }

                if (Input.GetButtonDown("Cancel"))
                {
                    ActionManager.useiCancel = true;
                    OpcaoEscolhida(txtDeOpcoes.Length - 1);
                }
                break;

            case fasesDoArmagedom.curando:

                tempoDecorrido += Time.deltaTime;
                if (tempoDecorrido > TEMPO_DE_CURA || Input.GetButtonDown("Acao"))
                {
                    fase = fasesDoArmagedom.fraseQueAntecedePossoAjudar;
                    dispara.ReligarPaineis();
                    dispara.Dispara(frasesDeArmagedom[0], fotoDoNPC);
                }
                break;

            case fasesDoArmagedom.fraseQueAntecedePossoAjudar:
                if (!dispara.LendoMensagemAteOCheia())
                {
                    ActionManager.ModificarAcao(GameController.g.transform, () =>
                    {
                        LigarMenu();
                        EntraFrasePossoAjudar();
                    });

                    fase = fasesDoArmagedom.emEspera;
                }
                break;

            case fasesDoArmagedom.armagedadosAberto:
                if (!dispara.LendoMensagemAteOCheia())
                {
                    GameController.g.HudM.EntraCriatures.MudarOpcao();
                }

                if (Input.GetButtonDown("Cancel"))
                {
                    ActionManager.useiCancel = true;
                    GameController.g.HudM.EntraCriatures.FinalizarHud();
                    GameController.g.HudM.Painel.EsconderMensagem();
                    LigarMenu();
                    EntraFrasePossoAjudar();
                }
                break;

            case fasesDoArmagedom.fazendoUmaTroca:
                if (replace.Update())
                {
                    GameController.g.HudM.UmaMensagem.ConstroiPainelUmaMensagem(() =>
                    {
                        VoltarDoEntraArmagedado();
                        fase = fasesDoArmagedom.escolhaInicial;
                    }, tempString);
                    AplicadorDeCamera.cam.InicializaCameraExibicionista(transform, 1);
                    fase = fasesDoArmagedom.mensDetrocaAberta;
                    GameController.g.Manager.Dados.CriatureSai = 0;
                }
                break;

            case fasesDoArmagedom.escolhaDePergaminho:
                AplicadorDeCamera.cam.FocarPonto(2, 8, -1, true);
                if (!dispara.LendoMensagemAteOCheia())
                {
                    GameController.g.HudM.Menu_Basico.MudarOpcao();
                }

                if (Input.GetButtonDown("Cancel"))
                {
                    ActionManager.useiCancel = true;
                    EscolhaDeComprarPergaminho(1);
                }
                break;

            case fasesDoArmagedom.vendendoPergaminho:
                if (!GameController.g.HudM.PainelQuantidades.gameObject.activeSelf)
                {
                    EntraFrasePossoAjudar();
                    LigarMenu();
                }
                break;
            }
        }