Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Cerez0 en Abril 03, 2014, 06:29:09 PM

Título: Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: Cerez0 en Abril 03, 2014, 06:29:09 PM
Hola a todos de nuevo llevo dias intentando y leyendo por todos lados pero no hay manera.. aver si me podeis echar un cable

cuando me matan guardo el puntaje con este codigo

highscore_clear ();
highscore_add ( global.nombre1 [ global . current_level1 ],  global . score1 [ global.current_level1 ]);

if global.Score >= highscore_value(1){
    global.nombre = get_string("Nuevo Record!!","");
    while string_length(global.nombre) > 8
        global.nombre = get_string ("Nombre Demasiado largo",global.nombre);
    if global.nombre == ""
        global.nombre = "Player";
    highscore_add(global.nombre,global.Score);
}
global.nombre1[global.current_level1] = highscore_name(1);
global.score1[global.current_level1] = highscore_value(1);


ini_open(working_diorectory+"\Settings.ini");
ini_write_string("Level"+string(global.current_level1),"Nombre1",global.nombre1);
ini_write_real("Level"+string(global.current_level1),"Score1",global.score1);
ini_close();


y para cargar los datos en la room record del nivel 1 uso esto:

ini_open(working_directory+"\Settings.ini");
for(var i = 0; i < 4; ++i){
    global.name1[i] = ini_read_string("Level"+string(i),"Nombre1","Noname");
    global.score1[i] = ini_read_real("Level"+string(i),"Score1",0);

}
ini_close();


luego dibujo el record tambien el la room record del nivel 1

var space = 20;
if view_visible[0]{
    x = view_xview[0]+view_wview[0]*.5;
    y = view_yview[0]+view_hview[0]*.5 - space*2.5;
}else{
    x = room_width*.5;
    y = room_height*.5 - space*2.5;
}
draw_set_halign(fa_right);
draw_set_valign(fa_top);
draw_set_color(c_black);
draw_set_alpha(1);
draw_text(x,y,global.score1[global.current_level1]);
draw_set_halign(fa_left);
x += 8;
draw_text(x,y,global.nombre1[global.current_level1]);
;


me da el siguiente error cuando intento guardar

Push :: Execution Error - Variable Get -5.current_level1(100002, -1)
at gml_Object_obj_raton_CollisionEvent_1 (line 2) - highscore_add ( global.nombre1 [ global . current_level1 ],  global . score1 [ global.current_level1 ]);

estoy echo un lio.. :-\

Un saludo!
Título: Re:Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: vampy09 en Abril 03, 2014, 08:28:53 PM
En donde cargas debes cambiar el nombre de la variable  global.name1 por:
global.nombre1

Donde declaras/inicializas la variable global.current_level1 ?

Cuantos Highscores guardas por nivel ?

[EDIT]
Creo el script en general tiene errores dado que cambias el nombre de las variables.
Título: Re:Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: Cerez0 en Abril 03, 2014, 09:58:48 PM
Cita de: vampy09 en Abril 03, 2014, 08:28:53 PM
En donde cargas debes cambiar el nombre de la variable  global.name1 por:
global.nombre1

Donde declaras/inicializas la variable global.current_level1 ?

Cuantos Highscores guardas por nivel ?

[EDIT]
Creo el script en general tiene errores dado que cambias el nombre de las variables.

tenias razon ya  e cambiado global.name1 x global.nombre1 y ya no me tira error.. y la variable global.current.level1 la declaro en la room guardo 1 higscore por nivel
Título: Re:Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: vampy09 en Abril 03, 2014, 11:11:42 PM
Una pregunta: para que usas el sistema "built-in" de highscores del GM si estas usando un ini ?

Título: Re:Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: Cerez0 en Abril 03, 2014, 11:27:54 PM
Cita de: vampy09 en Abril 03, 2014, 11:11:42 PM
Una pregunta: para que usas el sistema "built-in" de highscores del GM si estas usando un ini ?
para dejar de usar el ini.. que no me aclaro :S
Título: Re:Ayuda con codigo (guardar y cargar el mejor record por nivel)
Publicado por: criizziy en Abril 15, 2014, 04:38:24 PM
hola algien podria ayudarme use los comandos dela publicaion de arriba para hacer mi tabla de score pero me sale el sigiente error
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Draw Event
for object object78:

Push :: Execution Error - Variable Get -5.current_level1(100004, -1)
at gml_Object_object78_Draw_0 (line 13) - draw_text(x,y,global.score1[global.current_level1]);
############################################################################################