Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (iniciou)
        {
            contadorDeTempo += Time.deltaTime;

            switch (fase)
            {
            case faseDaAnima.iniciando:
                if (contadorDeTempo > 2)
                {
                    tCamera.position = pos1Camera.position;
                    tCamera.rotation = pos1Camera.rotation;
                    p.entrando       = false;
                    contadorDeTempo  = 0;
                    fase             = faseDaAnima.colocaParticulas;
                }
                break;

            case faseDaAnima.colocaParticulas:
                if (contadorDeTempo > 1)
                {
                    Destroy(
                        Instantiate(
                            elementosDoJogo.el.retorna("particulasDoCano"),
                            aSerDestruido.transform.position,
                            Quaternion.identity), 2.5f);

                    contadorDeTempo = 0;
                    fase            = faseDaAnima.destruaAsBarras;
                }
                break;

            case faseDaAnima.destruaAsBarras:
                if (contadorDeTempo > 2.5)
                {
                    ativaTriggerTransporte();
                    variaveisChave.shift[chaveDoCano] = true;
                    aSerDestruido.GetComponent <MeshRenderer>().enabled = false;
                    fase            = faseDaAnima.retornaMovimento;
                    contadorDeTempo = 0;
                }
                break;

            case faseDaAnima.retornaMovimento:
                if (contadorDeTempo > 1f)
                {
                    movimentoBasico.retornaFluxoCriature();
                    Destroy(aSerDestruido);
                    Destroy(this);
                }
                break;
            }
        }
    }
    // Update is called once per frame
    void Update()
    {
        if (Vector3.Distance(H.transform.position, transform.position) < 11
            &&
            shopBasico.temItem(nomeIDitem.explosivos, H) > -1
            &&
            !pausaJogo.pause
            &&
            !heroi.emLuta
            &&
            !iniciou
            )
        {
            if (Input.GetButtonDown("acao") || Input.GetButtonDown("acaoAlt"))
            {
                acaoDeItem2.retiraItem(nomeIDitem.explosivos, 1, H);
                iniciou = true;
                p       = gameObject.AddComponent <pretoMorte>();
                movimentoBasico.pararFluxoHeroi();
                H.transform.rotation = Quaternion.LookRotation(Vector3.right);
                A = H.GetComponent <Animator>();
                A.SetFloat("velocidade", 3);
            }
        }

        if (iniciou)
        {
            tempoDecorrido += Time.deltaTime;
            switch (fase)
            {
            case faseDaAnima.iniciando:
                if (tempoDecorrido > 2)
                {
                    A.SetFloat("velocidade", 0);
                    abreCanoDeEsgoto.posicionaCamera(
                        tCamera, pos1Camera.position, pos1Camera.rotation, p, out tempoDecorrido);
                    fase = faseDaAnima.colocaParticulas;
                }

                break;

            case faseDaAnima.colocaParticulas:
                if (tempoDecorrido > 1)
                {
                    Destroy(
                        Instantiate(
                            elementosDoJogo.el.retorna("particulasAbreVulcao"),
                            transform.position,
                            Quaternion.identity), 2.5f);

                    tempoDecorrido = 0;
                    fase           = faseDaAnima.destruaAsPedras;
                }
                break;

            case faseDaAnima.destruaAsPedras:
                if (tempoDecorrido > 2.5)
                {
                    ativaTriggerTransporte();
                    variaveisChave.shift["vulcaoAberto"] = true;
                    pedrasNoCaminho.SetActive(false);
                    fase           = faseDaAnima.retornaMovimento;
                    tempoDecorrido = 0;
                }
                break;

            case faseDaAnima.retornaMovimento:
                if (tempoDecorrido > 1f)
                {
                    movimentoBasico.retornarFluxoHeroi();

                    Destroy(this);
                }
                break;
            }
        }
    }
Exemplo n.º 3
0
    // Update is called once per frame
    void Update()
    {
        if(iniciou)
        {
            contadorDeTempo+=Time.deltaTime;

            switch(fase)
            {
            case faseDaAnima.iniciando:
                if(contadorDeTempo>2)
                {
                    tCamera.position = pos1Camera.position;
                    tCamera.rotation = pos1Camera.rotation;
                    p.entrando = false;
                    contadorDeTempo = 0;
                    fase = faseDaAnima.colocaParticulas;
                }
            break;
            case faseDaAnima.colocaParticulas:
                if(contadorDeTempo>1)
                {
                    Destroy(
                    Instantiate(
                        elementosDoJogo.el.retorna("particulasDoCano"),
                        aSerDestruido.transform.position,
                        Quaternion.identity),2.5f);

                    contadorDeTempo = 0;
                    fase = faseDaAnima.destruaAsBarras;
                }
            break;
            case faseDaAnima.destruaAsBarras:
                if(contadorDeTempo>2.5)
                {
                    ativaTriggerTransporte();
                    variaveisChave.shift[chaveDoCano] = true;
                    aSerDestruido.GetComponent<MeshRenderer>().enabled = false;
                    fase = faseDaAnima.retornaMovimento;
                    contadorDeTempo = 0;
                }
            break;
            case faseDaAnima.retornaMovimento:
                if(contadorDeTempo>1f)
                {
                    movimentoBasico.retornaFluxoCriature();
                    Destroy(aSerDestruido);
                    Destroy(this);
                }
            break;
            }
        }
    }