Hola buenas, he estado rebuscando por el foro, tomando ejemplos y nada :'(
En mi juego cuando pierdes, quiero que se muestre una tabla de puntuaciones.
Lo que yo he hecho funciona asi:
Termina el nivel y hay una room con un objeto que contiene esto esto:
Evento Create
[spoiler]
ini_open("arcade.ini")
puntoarcade1=ini_read_real('Arcade','puntoarcade1',-1)
puntoarcade2=ini_read_real('Arcade','puntoarcade2',-1)
puntoarcade3=ini_read_real('Arcade','puntoarcade3',-1)
puntoarcade4=ini_read_real('Arcade','puntoarcade4',-1)
puntoarcade5=ini_read_real('Arcade','puntoarcade5',-1)
puntoarcade6=ini_read_real('Arcade','puntoarcade6',-1)
puntoarcade7=ini_read_real('Arcade','puntoarcade7',-1)
puntoarcade8=ini_read_real('Arcade','puntoarcade8',-1)
puntoarcade9=ini_read_real('Arcade','puntoarcade9',-1)
puntoarcade10=ini_read_real('Arcade','puntoarcade10',-1)
if score<=puntoarcade10{
show_message('No has entrado en la tabla de records')
}else{
if score<=puntoarcade9{
show_message('Has quedado de 9º')
}else{
if score<=puntoarcade8{
show_message('Has quedado de 8º')
}else{
if score<=puntoarcade7{
show_message('Has quedado de 7º')
}else{
if score<=puntoarcade6{
show_message('Has quedado de 6º')
}else{
if score<=puntoarcade5{
show_message('Has quedado de 5º')
}else{
if score<=puntoarcade4{
show_message('Has quedado de 4º')
}else{
if score<=puntoarcade3{
show_message('Has quedado de 3º')
}else{
if score<=puntoarcade2{
show_message('Has quedado de 2º')
}else{
if score<=puntoarcade1{
ini_open("Arcade.ini")
ini_write_real("Arcade","puntoarcade1","score")
show_message('Has quedado de 1º')
ini_close()
}else{
show_message('Has quedado de 1º')
}}}}}}}}}}
ini_close()
[/spoiler]
Evento Draw:
[spoiler]draw_text(150,50,puntoarcade1)
draw_text(150,70,puntoarcade2)
draw_text(150,90,puntoarcade3)
draw_text(150,110,puntoarcade4)
draw_text(150,130,puntoarcade5)
draw_text(150,150,puntoarcade6)
draw_text(150,170,puntoarcade7)
draw_text(150,190,puntoarcade8)
draw_text(150,210,puntoarcade9)
draw_text(150,230,puntoarcade10)
draw_set_color(c_blue);
draw_set_font(font1);
[/spoiler]
y no funciona la tabla de puntuaciones no guarda la puntuación anterior y obviamente no pone al primero de la lista.
estoy desesperado con esto, Gracias de antemano.
Según tu código, nada más guardas el valor del que superó el valor del 1° puesto, los otros nunca le pusiste el ini_write_real(), a demás en el 1° puesto estás cerrando el archivo *.ini y después del if lo volvés a cerrar, sacale el que le pusiste dentro del if y dejale el que está afuera a ver que pasa.
uy copie mal el codigo, el caso es que puse el write en todos y puse también lo de close, y nada de nada, nose que hacer ya, estoy desesperado. :'(
Podes hacer dos cosas, subir el editable así vemos cual es el error o cambiar de método. Uno es usar alguna librería (dll) que lea los *.ini (aunque no se si GMS soporta librerías), la otra es usar la función file_text_ (http://www.comunidadgm.org/manual_GM/Archivos_GML.htm) que directamente te crea un archivo de texto plano en vez de un archivo *.ini