Пример #1
0
    bool UpdateInterno()
    {
        switch (estadoInterno)
        {
        case EstadoInterno.animacaoDeEncontro:
            tempoDecorrido += Time.deltaTime;
            if (tempoDecorrido > 0.5F)
            {
                estadoInterno = EstadoInterno.cameraNoTreinador;
            }
            break;

        case EstadoInterno.perguntaParaIniciar:
            if (!GameController.g.HudM.DisparaT.LendoMensagemAteOCheia())
            {
                GameController.g.HudM.Menu_Basico.IniciarHud(IniciarOuNao,
                                                             BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.simOuNao).ToArray());
                estadoInterno = EstadoInterno.esperandoResposta;
            }
            break;

        case EstadoInterno.esperandoResposta:
            GameController.g.HudM.Menu_Basico.MudarOpcao();

            if (GameController.g.CommandR.DisparaAcao())
            {
                estadoInterno = EstadoInterno.emEspera;
                IniciarOuNao(GameController.g.HudM.Menu_Basico.OpcaoEscolhida);
            }
            break;

        case EstadoInterno.cameraNoTreinador:
            if (AplicadorDeCamera.cam.FocarPonto(-2 * Vector3.up, 1, 6, 4, true))
            {
                disparaT = GameController.g.HudM.DisparaT;
                disparaT.IniciarDisparadorDeTextos();
                conversa = BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.frasesDaLutaContraTreinador).ToArray();
                conversa = new string[2] {
                    string.Format(conversa[0], criaturesDoTreinador.Length), conversa[1]
                };
                estadoInterno = EstadoInterno.frasePreInicio;
            }
            break;

        case EstadoInterno.frasePreInicio:
            if (disparaT.UpdateDeTextos(conversa))
            {
                animaB = new AnimaBraco(MeuTransform, GameController.g.Manager.transform, true);
                Transform aux = GameController.g.Manager.CriatureAtivo.transform;
                animaB.PosCriature = aux.position + 3 * aux.forward;

                estadoInterno = EstadoInterno.animandoBraco;
                AplicadorDeCamera.cam.DesligarMoveCamera();
            }
            break;

        case EstadoInterno.animandoBraco:
            if (!animaB.AnimaEnvia(criaturesDoTreinador[indiceDoEnviado].C, "criatureDeTreinador"))
            {
                GameController.g.EncontroAgoraCom(
                    criaturesDoTreinador[indiceDoEnviado].PrepararInicioDoCriature(
                        GameObject.Find("criatureDeTreinador").GetComponent <CreatureManager>()), true, nomeDoTreinador);
                estadoInterno = EstadoInterno.leituraDeLuta;
            }
            break;

        case EstadoInterno.leituraDeLuta:
            if (GameController.g.InimigoAtivo == null)
            {
                indiceDoEnviado++;
                if (indiceDoEnviado < criaturesDoTreinador.Length)
                {
                    conversa = BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.frasesDaLutaContraTreinador).ToArray();
                    conversa = new string[2] {
                        conversa[2], conversa[3]
                    };
                    disparaT.IniciarDisparadorDeTextos();
                    AplicadorDeCamera.cam.InicializaCameraExibicionista(MeuTransform, 1, true);
                    estadoInterno = EstadoInterno.novoJogoDeCamera;
                }
                else
                {
                    AplicadorDeCamera.cam.InicializaCameraExibicionista(MeuTransform, 1, true);
                    conversa = StringParaEnum.SetarConversaOriginal(chaveDaFinalizacaoString, ref chaveDaFinalizacao);
                    disparaT.IniciarDisparadorDeTextos();
                    estadoInterno = EstadoInterno.fraseDaFinalizacao;
                }
            }
            break;

        case EstadoInterno.novoJogoDeCamera:
            if (AplicadorDeCamera.cam.FocarPonto(1, 6, 4, true))
            {
                estadoInterno = EstadoInterno.frasePreInicio;
            }
            break;

        case EstadoInterno.fraseDaFinalizacao:
            if (AplicadorDeCamera.cam.FocarPonto(1, 6, 4, true))
            {
                if (disparaT.UpdateDeTextos(conversa))
                {
                    if (recompensas.Length <= 0)
                    {
                        estadoInterno = EstadoInterno.finalizacao;
                    }
                    else
                    {
                        conversa        = BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.bau).ToArray();
                        indiceDoEnviado = 0;
                        VerificaItem();
                        estadoInterno = EstadoInterno.verificandoMaisItens;
                    }
                }
            }
            break;

        case EstadoInterno.verificandoMaisItens:
            if (Input.GetButtonDown("Acao"))
            {
                if (indiceDoEnviado + 1 > recompensas.Length)
                {
                    GameController.g.HudM.Painel.EsconderMensagem();
                    GameController.g.HudM.MostrarItem.DesligarPainel();
                    estadoInterno = EstadoInterno.finalizacao;
                }
                else
                {
                    VerificaItem();
                }
                ActionManager.anularAcao = true;
            }
            break;

        case EstadoInterno.finalizacao:
            estado        = EstadoDoNPC.finalizadoComBotao;
            estadoInterno = EstadoInterno.emEspera;
            GameController.g.MyKeys.MudaShift(chaveDaLuta, true);
            GameController.g.RetornarParaFluxoDoHeroi(true);
            return(true);
            //break;
        }
        return(false);
    }
    public void Update()
    {
        switch (fase)
        {
        case FasesDoShop.iniciouConversaNoShop:
            AplicadorDeCamera.cam.FocarPonto(2, 8);
            if (dispara.UpdateDeTextos(t, fotoDoNPC)
                ||
                dispara.IndiceDaConversa > t.Length - 2
                )
            {
                EntraFrasePossoAjudar();
            }
            break;

        case FasesDoShop.escolhaInicial:

            if (!dispara.LendoMensagemAteOCheia())
            {
                fase = FasesDoShop.esperandoEscolha;
                menuBasico.IniciarHud(ComprarVender, bancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.comprarOuVender).ToArray());
            }
            break;

        case FasesDoShop.fraseDeVenda:
            if (!dispara.LendoMensagemAteOCheia())
            {
                fase = FasesDoShop.esperandoEscolha;
                string[] opcoes = new string[itensAVenda.Length];
                for (int i = 0; i < itensAVenda.Length; i++)
                {
                    opcoes[i] = itensAVenda[i].ToString();
                }
                menuDeShop.IniciarHud(true, OpcaoEscolhidaParaCompra, opcoes);
                menuDeShop.SetActive(true);
            }
            break;

        case FasesDoShop.fraseDeCompra:
            if (!dispara.LendoMensagemAteOCheia())
            {
                fase = FasesDoShop.esperandoEscolha;
                List <string>  opcoes2   = new List <string>();
                List <MbItens> meusItens = GameController.g.Manager.Dados.Itens;

                for (int i = 0; i < meusItens.Count; i++)
                {
                    if (meusItens[i].Valor > 0)
                    {
                        opcoes2.Add(meusItens[i].ID.ToString());
                    }
                }
                menuDeShop.IniciarHud(false, OpcaoEscolhidaParaVenda, opcoes2.ToArray());
                menuDeShop.SetActive(true);
            }
            break;

        case FasesDoShop.quantidadesAbertas:
            if (!painelQuantidades.gameObject.activeSelf)
            {
                menuDeShop.FinalizarHud();
                if (painelQuantidades.Comprar)
                {
                    ComprarVender(0);
                }
                else
                {
                    ComprarVender(1);
                }
            }
            break;
        }
    }
Пример #3
0
        public void Update()
        {
            switch (fase)
            {
            case FasesDoShop.iniciouConversaNoShop:
                AplicadorDeCamera.cam.FocarPonto(2, 8, -1, true);
                if (dispara.UpdateDeTextos(t, fotoDoNPC)
                    ||
                    dispara.IndiceDaConversa > t.Length - 2
                    )
                {
                    EntraFrasePossoAjudar();
                }
                break;

            case FasesDoShop.escolhaInicial:

                if (!dispara.LendoMensagemAteOCheia())
                {
                    fase = FasesDoShop.esperandoEscolhaInicial;
                    menuBasico.IniciarHud(ComprarVender, BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.comprarOuVender).ToArray());
                    ActionManager.ModificarAcao(GameController.g.transform, () =>
                    {
                        ComprarVender(menuBasico.OpcaoEscolhida);
                        ActionManager.ModificarAcao(GameController.g.transform, null);
                    });
                }
                break;

            case FasesDoShop.esperandoEscolhaInicial:
                if (Input.GetButtonDown("Cancel"))
                {
                    ActionManager.ModificarAcao(GameController.g.transform, null);
                    ActionManager.useiCancel = true;
                    SairDoShop();
                }

                menuBasico.MudarOpcao();
                break;

            case FasesDoShop.fraseDeVenda:
                if (!dispara.LendoMensagemAteOCheia())
                {
                    fase = FasesDoShop.esperandoEscolhaDeCompraVenda;
                    string[] opcoes = new string[itensAVenda.Length];
                    for (int i = 0; i < itensAVenda.Length; i++)
                    {
                        opcoes[i] = itensAVenda[i].ToString();
                    }


                    ActionManager.ModificarAcao(GameController.g.transform, () =>
                    {
                        ActionManager.ModificarAcao(GameController.g.transform, null);
                        GameController.g.HudM.DisparaT.DesligarPaineis();
                        OpcaoEscolhidaParaCompra(menuDeShop.OpcaoEscolhida);
                    });

                    menuDeShop.IniciarHud(true, OpcaoEscolhidaParaCompra, opcoes);
                    menuDeShop.SetActive(true);
                }
                break;

            case FasesDoShop.esperandoEscolhaDeCompraVenda:
                if (Input.GetButtonDown("Cancel"))
                {
                    ActionManager.ModificarAcao(GameController.g.transform, null);
                    VoltarParaAPerguntaInicial();
                }

                menuDeShop.MudarOpcao();
                break;

            case FasesDoShop.fraseDeCompra:
                if (!dispara.LendoMensagemAteOCheia())
                {
                    fase = FasesDoShop.esperandoEscolhaDeCompraVenda;
                    List <string>  opcoes2   = new List <string>();
                    List <MbItens> meusItens = GameController.g.Manager.Dados.Itens;

                    for (int i = 0; i < meusItens.Count; i++)
                    {
                        if (meusItens[i].Valor > 0)
                        {
                            opcoes2.Add(meusItens[i].ID.ToString());
                        }
                    }

                    ActionManager.ModificarAcao(GameController.g.transform, () =>
                    {
                        OpcaoEscolhidaParaVenda(menuDeShop.OpcaoEscolhida);
                    });

                    menuDeShop.IniciarHud(false, OpcaoEscolhidaParaVenda, opcoes2.ToArray());
                    menuDeShop.SetActive(true);
                }
                break;

            case FasesDoShop.quantidadesAbertas:
                if (!painelQuantidades.gameObject.activeSelf)
                {
                    menuDeShop.FinalizarHud();
                    if (painelQuantidades.Comprar)
                    {
                        ComprarVender(0);
                    }
                    else
                    {
                        ComprarVender(1);
                    }
                }
                break;

            case FasesDoShop.saindoDoShop:
                if (!dispara.LendoMensagemAteOCheia())
                {
                    fase = FasesDoShop.esperandoFim;
                    ActionManager.ModificarAcao(GameController.g.transform, Finalizacao);
                }
                break;

            case FasesDoShop.esperandoFim:
                if (Input.GetButtonDown("Cancel"))
                {
                    Finalizacao();
                }
                break;
            }
        }
    void Update()
    {
        switch (fase)
        {
        case fasesDoArmagedom.mensInicial:
            AplicadorDeCamera.cam.FocarPonto(2, 8);
            if (dispara.UpdateDeTextos(t, fotoDoNPC)
                ||
                dispara.IndiceDaConversa > t.Length - 2
                )
            {
                EntraFrasePossoAjudar();
                LigarMenu();
            }
            break;

        case fasesDoArmagedom.escolhaInicial:

            if (!dispara.LendoMensagemAteOCheia())
            {
                fase = fasesDoArmagedom.esperandoEscolha;
            }
            break;

        case fasesDoArmagedom.curando:

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

        case fasesDoArmagedom.fraseQueAntecedePossoAjudar:
            if (!dispara.LendoMensagemAteOCheia())
            {
                if (Input.GetMouseButtonDown(0))
                {
                    LigarMenu();
                    EntraFrasePossoAjudar();
                }
            }
            break;

        case fasesDoArmagedom.fazendoUmaTroca:
            if (replace.Update())
            {
                GameController.g.HudM.UmaMensagem.ConstroiPainelUmaMensagem(() => {
                    VoltarDoEntraArmagedado();
                    fase = fasesDoArmagedom.esperandoEscolha;
                }, tempString);
                AplicadorDeCamera.cam.InicializaCameraExibicionista(casinhaDoArmagedom, 1);
                fase = fasesDoArmagedom.mensDetrocaAberta;
            }
            break;

        case fasesDoArmagedom.mensDetrocaAberta:
            AplicadorDeCamera.cam.FocarPonto(2, 8);
            break;
        }
    }
Пример #5
0
    bool UpdateInterno()
    {
        switch (estadoInterno)
        {
        case EstadoInterno.escolhasAbertas:

            GameController.g.HudM.Menu_Basico.MudarOpcao();

            if (GameController.g.CommandR.DisparaAcao())
            {
                OpcaoEscolhida(GameController.g.HudM.Menu_Basico.OpcaoEscolhida);
            }


            if (Input.GetButtonDown("Cancel") && !ActionManager.useiCancel)
            {
                PreFinal();
            }
            else
            {
                ActionManager.useiCancel = false;
            }
            break;

        case EstadoInterno.conversaInterna:
            if (disparaT.UpdateDeTextos(conversa, fotoDoNPC))
            {
                EntraNasEscolhas();
            }
            break;

        case EstadoInterno.fraseDeFinalizacao:
            if (disparaT.UpdateDeTextos(conversa, fotoDoNPC))
            {
                FinalizaConversa();
            }
            break;

        case EstadoInterno.frasePreVenda:
            if (!disparaT.LendoMensagemAteOCheia())
            {
                GameController.g.HudM.Menu_Basico.IniciarHud(ComprarOuNaoComprar,
                                                             BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.simOuNao).ToArray());
                estadoInterno = EstadoInterno.aguardandoSimOuNao;
            }
            break;

        case EstadoInterno.aguardandoSimOuNao:
            GameController.g.HudM.Menu_Basico.MudarOpcao();

            if (GameController.g.CommandR.DisparaAcao())
            {
                ComprarOuNaoComprar(GameController.g.HudM.Menu_Basico.OpcaoEscolhida);
            }
            break;

        case EstadoInterno.fraseInsuficiente:
            if (!disparaT.LendoMensagemAteOCheia())
            {
                if (GameController.g.CommandR.DisparaAcao())
                {
                    disparaT.DesligarPaineis();
                    EntraNasEscolhas();
                }
            }
            break;

        case EstadoInterno.fraseDeBoaCompra:
            if (!disparaT.LendoMensagemAteOCheia())
            {
                if (GameController.g.CommandR.DisparaAcao())
                {
                    MonoBehaviour.Destroy(
                        MonoBehaviour.Instantiate(
                            GameController.g.El.retorna(DoJogo.particulaDaDefesaPergaminhoFora), MeuTransform.position, Quaternion.identity
                            ), 5);

                    disparaT.DesligarPaineis();
                    contadorDeTempoX = 0;
                    estadoInterno    = EstadoInterno.particulaDeCoisasBoas;
                }
            }
            break;

        case EstadoInterno.particulaDeCoisasBoas:
            contadorDeTempoX += Time.deltaTime;
            if (contadorDeTempoX > TEMP_COISAS_BOAS)
            {
                disparaT.IniciarDisparadorDeTextos();
                disparaT.Dispara(conversa[3], fotoDoNPC);
                estadoInterno = EstadoInterno.fraseFinalDeCompra;
                GameController.g.HudM.MostrarItem.IniciarPainel(!indice1 ? nomeIDitem.pergSinara : nomeIDitem.pergAlana, 1);
            }
            break;

        case EstadoInterno.fraseFinalDeCompra:
            if (!disparaT.LendoMensagemAteOCheia())
            {
                if (GameController.g.CommandR.DisparaAcao())
                {
                    GameController.g.HudM.MostrarItem.DesligarPainel();
                    disparaT.DesligarPaineis();
                    EntraNasEscolhas();
                }
            }
            break;
        }
        return(false);
    }
Пример #6
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;
            }
        }