Jump to content
Sign in to follow this  
Joawin

Problema para cambiar de nivel

Recommended Posts

Buenas, estoy creando un juego 2D para Android y en este tienes que conseguir darle los clicks que te pide un marcador al personaje mientras corre una cuenta atrás, y cuando consigues darlos todos en ese tiempo, deberías poder cambiar de nivel a uno en el que el personaje vaya más rápido pero no lo consigo hacer, cuando eso para se resetea el nivel, os lo muestro:

                                 3e480510a307eb394a0bcc8a3102ecbe.gif

http://gyazo.com/3e480510a307eb394a0bcc8a3102ecbe (si no se ve el gif)

 

Como pueden comprobar, cuando doy los últimos 5 clicks que me pide (marcador de la derecha) se resetea al igual que el tiempo de nuevo a 20 (el tiempo es el de la izquierda) lo que quiero es que cuando consigas dar los clicks dentro del tiempo se ponga un menú de pausa preparado con el nuevo nivel o en su defecto que se ponga el nuevo nivel ya de golpe y en este pueda hacer que el personaje se mueva más rápido y el tiempo o clicks cambie

 

Esto es lo que actualmente tengo:

 

Función del click

var vida: int = 20; //Vida Inicial
var GUITextVisualizador : GUIText;
var nivel: int = 1; //Nivel Inicial




function incremento () { //En desarrollo
nivel++;
if(nivel == 2){
vida = 30;
 }
}




function OnMouseDown () {
vida--;
GUITextVisualizador.text = vida.ToString();
    if(vida == 0){
        // Destroy(gameObject); Sin utilidad
incremento();
 }
}




function Reiniciar () { //Sin utilidad
OnMouseDown();
}

 

 

Cuenta atrás

var valorInicial  : int   = 5;

//GUI Text en el que se va a ver el conteo
var GUITextVisualizador : GUIText;


function Start () {


 // Llamada a función contadora
 CountDown();


}


function CountDown(){


 if(valorInicial>0){ // Si valorInicial es mayor a 0
  GUITextVisualizador.text = valorInicial.ToString(); // Imprimir valorInicial en variable GUI como String
  yield WaitForSeconds(1); // Esperar 1 segundo antes de ejecutar lo que esta debajo
  valorInicial--; // Restar 1 a valorInicial
  Reiniciar(); // Función Loop
 } else { // Si ya no es mayor a 0
  GUITextVisualizador.text = '0'; // 0 Es el último digito mostrado.
 }
  if (valorInicial==0) {
  Application.LoadLevel ("GameOver");
  } 
}


function Reiniciar(){
 CountDown(); // Ejecutar de nuevo la función contadora
}
 

GRACIAS DE ANTEMANO

Edited by Joawin

Share this post


Link to post
Share on other sites
Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...