Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (temporizador.GetStage() == 0)
        {
            if (temporizador.Finish())
            {
                Debug.Log("Robot Colocaldo");
                panelGlobal.SetActive(false);
                texto.gameObject.SetActive(false);
                ResetColorData();
                InitRobot();
            }
        }

        if (estado == GameState.running)
        {
            if (RobotActual.transform.position != puntoFinal.position)
            {
                RobotActual.transform.position = Vector3.Lerp(RobotActual.transform.position, puntoFinal.position, Time.deltaTime);
            }
            for (int i = 0; i <= 11; i++)
            {
                if (faja[i].childCount == 1 && faja[i].GetComponent <Faja> ().ruta == 10)
                {
                    Instantiate(partes[Random.Range(0, partes.Length)], faja[i].position, faja[i].rotation, faja[i]);
                }
            }

            //timer --
            if (temporizador.GetStage() == 1)
            {
                temporizador.Activar(15);
                if (temporizador.Finish())
                {
                    estado = GameState.finish;
                    SoundController.PlayOtherSoundEfect(12);
                    foreach (Player jugador in Jugadores)
                    {
                        // Debug.Log (jugador.eventoActual);
                        if (jugador.eventoActual != null)
                        {
                            jugador.MatarEvento();
                        }
                    }
                }
            }

            // if timer.runsout estado cambia a finish
        }
        if (estado == GameState.finish)
        {
            if (RobotActual.transform.position != puntoAparicion.position)
            {
                RobotActual.transform.position = Vector3.Lerp(RobotActual.transform.position, puntoAparicion.position, Time.deltaTime);
                if (puntoAparicion.position.y - RobotActual.transform.position.y < 0.5)
                {
                    Destroy(RobotActual);
                    //llamar temporizador
                    //Invoke("InitRobot", 5f);
                    if (temporizador.GetStage() == 2)
                    {
                        estado = GameState.setup;
                        temporizador.Activar(2f);
                        temporizador.SetStage(0);
                        BonusScore();
                        panelGlobal.SetActive(true);
                        texto.gameObject.SetActive(true);
                    }
                }
            }
        }
    }