Buenas, estoy creando un juego que su eje principal es una cuenta atras y lo tengo todo muntado pero cuando paso de pantalla (room) se me reinicia el contador.

Codigo:

Create
minutes = 1;
seconds = 0;
alarm[0] = room_speed;


Alarm 0
seconds -= 1;
if (seconds < 0) {
    seconds = 59;
    minutes -= 1;
    if (minutes < 0) {
        minutes = 0;
        seconds = 0;
        game_restart();
    }
}
alarm[0] = room_speed;


Draw
text = draw_text(16, 16, string(minutes) + ":" + string(seconds));
color_get_red(text);


He probado varias cosas pero nada :/
Como lo podría hacer para que la cuanta atrás no se reinicie al pasar de pantalla y vaya cintando durante todo el juego haga lo que haga?


Por cierto, creo que el color de las letras es en negro, como lo podría poner en blanco u otro color? xD

SalU2 ^^

No tengo mucha idea de código,pero creo que esta bien... puedes probar darle a la casilla de persistent que sale cuando pones eventos al object,creo que así se solucionaría :P

O también,en vez de ponerlo en el create, lo pones en el start game :D
Jugador de muchos juegos y creador de algunos ;)
¿Buscas un guionista? Haz click aquí

#2 Octubre 19, 2012, 09:16:06 PM Ultima modificación: Octubre 19, 2012, 09:24:53 PM por elviskelley
codigo
Event create del primero object en el primer room.
global.minutes = 1;
global.seconds = 0;


Event step del personaje osea el jugador.
if global.seconds > 0 then {global.seconds-=1/room_speed} else
{global.minutes-=1; global.seconds+=59;}
if global.minutes <1 and global.seconds <1 then {game_restart();}


Event Draw jugador.
Código: [Seleccionar]
draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,image_angle,image_blend,image_alpha)
draw_set_color(c_red);
text = draw_text(16, 16, "Minutos: "+string(global.minutes) +string(":")+ string(seconds));

Gracias a los 2 ya he solucionado el problema ^^

Siento el doble posteo, pero.
Hay alguna forma de desactivar el persistent al llegar a una room determinada o tocar (colisionar) un objeto?


ya, bueno. Hasta aquí llego xD
También he probado que al atravesar el ultimo portal se destruya el objeto time (con la típica papelera, seleccionando other y el obj_alarm) y el código que tu has puesto lo he intentado poner en algunos scripts pero en ninguno funciona, sera que no lo pongo bien :/

Lo suyo es que al tocar el ultimo portal que me lleva al nivel 12 (otra room) se desactive el persistent por lo tanto el contador desaparezca u otra opción seria que al entrar en la room 12 desaparezca sin que tenga que tocar nada y ya...

Crea un controlador (objControlador) que analice cuales object son persisten y lo destruya claro solo los que ya no necesites al resto que solo le quite el persitent