Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: kaliman777 en Febrero 19, 2013, 09:40:29 PM

Título: Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: kaliman777 en Febrero 19, 2013, 09:40:29 PM
Hola a todos y todas:

Mi pregunta es de dos partes muy relacionadas:

a)  Cómo hago para que mi juego se guarde por asimismo cada vez que el SCORE cambie (suba o baje).
b)  Cómo hago que al abrir un game se abra con el ultimo score que tenía cuando lo cerré.

Gracias
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: pucara en Febrero 19, 2013, 10:34:58 PM
a) Puedes usar una variable auxiliar, compararla con el SCORE y si cambia (cumpliendo así la condición) ejecutas la acción de guardar, para lo cual estaría bien un script que te guarde un INI

b) Lo dicho, un *.ini es lo más adecuado, ya que sólo vas a guardar una sola variable, no necesitas dll's y es bastánte fácil.

Espero haberte sido de ayuda  8)
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: Mgbu en Febrero 20, 2013, 12:37:23 AM
Era una sola pregunta por vez, pero con respecto a lo de saber cuando se cambia el Score yo simplemente guardaria el juego cada vez que cambio el score. O sea si en algun lado tenés "score += 5" inmediatamente escribis "game_save()".
Así te ahorras de chequear constantemente si una variable cambia, lo malo es que vas a tener que revisar el código de cada vez que modificas Score

No se si se entendio :-[
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: Killer en Febrero 20, 2013, 04:54:57 AM
Si no estás usando la tabla de highscores puedes evitarte problemas utilizándola para guardar el score entre sesiones.

Cuando cargas el juego (evento game start) y/o quieras cargar el score anterior usa:

[gml]score = highscore_value(1)[/gml]

Cuando quieres guardar el score y/o cierres el juego (evento game end) usa:

[gml]highscore_clear()
highscore_add("",score)[/gml]

Si no estás usando la variable interna score simplemente cámbiala en el código por cualquiera que estés usando.
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: kaliman777 en Febrero 20, 2013, 05:30:21 PM
Gracias a todos, uniendo sus ideas, logré hacer esto y funka de maravilla:

CREATE DEL OBJ CONTROLADOR DEL SCORE:
game start
score = 0;
global.viejo_score = 0;
if(file_exists(working_directory+ "\autosave.sav"){
  game_load(working_directory+ "\autosave.sav");
  exit;
}
// bla bla otros códigos míos


Para autoguardar (Lo puse en STEP del mismo objeto):
if(score > global.viejo_score){
  global.viejo_score = score;
  game_save(working_directory+ "\autosave.sav");
}


Así cada vez que abro mi juego lo encuentro con el último SCORE donde lo dejé.

Gracias a todos.
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: Creador de juegos GM en Febrero 20, 2013, 05:32:27 PM
exelennte,muy bueno,deberían fijarlo al tema porque hay muchos que todavía no conocen la funcion
y se confunden
Título: Re:Guardar el juego automáticamente cada vez que el SCORE cambia
Publicado por: elviskelley en Febrero 20, 2013, 09:55:58 PM
usa un archivo ini te dejo un ejemplo adjunto.
Me extraña, ya habia respondido a una pregunta igual  :-X

Killer Reapareciste. (No estaba muerto, estaba de parranda jajaja)