Hola, yo de nuevo, ¿Cómo puedo establecer que cada segundo que llevo en mi juego me sume al Higscore +1?
Es decir, supongamos que inicio el juego y llevo jugando 20 segundos, entonces tiene que haber un Higscore de 20 ptos
Una manera algo enredosa:
Creas una variable para contar los pasos, puede ser en el objeto del jugador o en un controlador
globalvar pasos = 0
en el evento [room end]
pasos = 0
EN el evento [step] le sumas uno a la variable pasos, siempre y cuando el juego esté activo (no pausado)
if (pausa == 0)
pasos += 1
if (pasos mod room_speed == 0)
++highscore //Sumar 1 al marcador cuando pasos sea múltiplo de room_speed
Otra manera, si prefieres usar alarmas:
evento create del jugador o del controlador
alarm[0] = room_speed
evento [alarm0]
++highscore
alarm[0] = room_speed //Esperar otro segundo para sumar 1 a highscore
Cita de: penumbra en Marzo 20, 2014, 01:41:14 AM
Una manera algo enredosa:
Creas una variable para contar los pasos, puede ser en el objeto del jugador o en un controlador
globalvar pasos = 0
en el evento [room end]
pasos = 0
EN el evento [step] le sumas uno a la variable pasos, siempre y cuando el juego esté activo (no pausado)
if (pausa == 0)
pasos += 1
if (pasos mod room_speed == 0)
++highscore //Sumar 1 al marcador cuando pasos sea múltiplo de room_speed
Otra manera, si prefieres usar alarmas:
evento create del jugador o del controlador
alarm[0] = room_speed
evento [alarm0]
++highscore
alarm[0] = room_speed //Esperar otro segundo para sumar 1 a highscore
Ninguno de los métodos me a funcionado
amigo usa las alarmas es muy sencillo mira te explico
crea un objeto llamado obj_Tiempo en el evento create pones
alarm[0]=30;
tiempo=0;
en el evento alarm[0]
pones
tiempo+=1;
alarm[0]=30;
listo amigo
luego cuando el jugador pierde usas los archivos ini para guardar el tiempo y compararlo con el mejor tiempo
asi
***activas la alarma 1 cuando el jugador pierde
obj_jugador evento collicion con enemigo
obj_Tiempo.alarm[1]=2;
en alarm 1 del obj_Tiempo
pones
if tiempo>mejor_tiempo
{
ini_open("save.ini");
ini-write_real("Puntuacion","Mejor",tiempo);
ini_close();
listo tu tiempo se guarda y todo!!! cualquier cosa me preguntas!!!!
hola pues yo te recomiendo usar una linea de tiempo con loop esa que se repita cada 30 que es a 1 seg. y pondrias en la linea de tiempo
global.timescor +=1
y te ira sumando en la variable timescor 1 cada 30 steps o bien 1 segundo saludos y cuando quieres que se pare pones el stop time line en tu evento y listo espero te sirva