Noviembre 15, 2015, 04:02:25 PM Ultima modificación: Noviembre 15, 2015, 04:06:50 PM por Ynfiniti
Puse un archivo ini en "Included Files" con nombre "Config.ini". Al momento de escribir en él lo hago de la siguiente manera(Obvia):

ini_open("Config.ini");
   ini_write_real("Cosa","Bump",variable);
ini_close();

Problema: en vez de guardarse los datos en el ini que incluí en el proyecto, lo que hace es crear un archivo ini en Appdata como si no existiera el ini incluido, alguien sabe como leer y escribir sobre un archivo ini incluido en el proyecto?  :-[

No se puede hacer eso desde el juego. Si quieres modificar el ini desde el juego y que el archivo modificado quede además en included files, tienes tú mismo que reemplazar el archivo en included files con el archivo modificado en Appdata.


El problema es que no importa lo que guardes en el ini. a lo que el juego se ejecute de nuevo, el archivo que posees en inluide files, va a reemplazar al ini anterior, por lo cual llegas a un siclo donde siempre vuelves al ini original que has colocado en inluide files.
Lo mejor es que ordenes que el ini se cree desde la primera room con un codigo como este.
if !file_exists(argument0)
{
file_bin_open(argument0,0);
file_bin_close(argument0);
}
Lo que hace es unicamente crear el ini.
Luego en la siguiente room o en la room que lo necesitas, usas los codigos para abrirlo agregar o modificar valores, y cerrarlo como es comun. algo asi.

ini_open(argument0);
ini_write_real("Global","Config",global.variable);
ini_close();

Asi no tendras falla y podras usarlo. Pero sacalo de incluide files.
Atentamente.-
Elvis Kelley
Mi Manual.
Mi canal de Youtube Youtube click aqui
Video tutoriales Game maker

Cita de: elviskelley en Noviembre 16, 2015, 12:00:09 PM
El problema es que no importa lo que guardes en el ini. a lo que el juego se ejecute de nuevo, el archivo que posees en inluide files, va a reemplazar al ini anterior, por lo cual llegas a un siclo donde siempre vuelves al ini original que has colocado en inluide files.
Lo mejor es que ordenes que el ini se cree desde la primera room con un codigo como este.
if !file_exists(argument0)
{
file_bin_open(argument0,0);
file_bin_close(argument0);
}
Lo que hace es unicamente crear el ini.
Luego en la siguiente room o en la room que lo necesitas, usas los codigos para abrirlo agregar o modificar valores, y cerrarlo como es comun. algo asi.

ini_open(argument0);
ini_write_real("Global","Config",global.variable);
ini_close();

Asi no tendras falla y podras usarlo. Pero sacalo de incluide files.

Caes en un error profundo. En una nueva ejecución del juego, los archivos en included files no reemplazan a los archivos en la save area, de lo contrario no tendrían sentido todas las funciones para escribir en inis. Los archivos en included files sólo se usan a modo de lectura en caso de que su contraparte en la save area no exista.