Deberéis tener en cuenta estos pasos:
- Para integrarlo en vuestro proyecto, cread un fichero de texto con cualquier aplicación y guardarlo como Config.gd (por ejemplo).
- Este script lo tengo configurado como singleton. Para hacer esto, deberemos ir a los ajustes de proyecto y añadirlo desde la pestaña AutoLoad. Una vez hecho esto, podremos llamar a las funciones de esta manera: XXXXX.guardar_configuracion() y XXXXX.cargar_configuracion(), siendo XXXXX el nombre que le hayamos dado en AutoLoad; yo, por ejemplo, le he puesto el mismo nombre que el fichero de texto (sin la extensión, claro).
- Volvemos otra vez a la configuración del proyecto, y en la sección Config (la primera de todas) deberemos desmarcar (en caso de que esté marcada) la casilla Use Custom User Dir, y en el cuadro de texto de Custom User Dir deberemos poner el nombre del fichero que se guardará en el ordenador o móvil del jugador (por ejemplo, datos_config).
Código del script:
extends Node const SAVE_DIR = "user://saves/" var ruta_configuracion = SAVE_DIR + "configuracion.dat" #----------------------------------- var configuracion = { 'vol_musica = 0, 'vol_efectos = 0, 'idioma = "es", 'energia = 100 'vidas = 3 } #----------------------------------- func _ready(): 'OS.center_window() # GUARDAR/CARGAR CONFIGURACION --------------------------------------------- func guardar_configuracion(): 'var data = { 'vol_musica = configuracion.vol_musica, 'vol_efectos = configuracion.vol_efectos, 'idioma = configuracion.idioma, 'energia = configuracion.energia, 'vidas = configuracion.vidas '} ' 'var dir = Directory.new() 'if !dir.dir_exists(SAVE_DIR): ''dir.make_dir_recursive(SAVE_DIR) ' 'var file = File.new() 'var error = file.open(ruta_configuracion, File.WRITE) 'if error == OK: ''file.store_var(data) ''file.close() ' 'print("Configuración guardada: " + str(data) + "\n") func cargar_configuracion(): 'var file = File.new() 'if file.file_exists(ruta_configuracion): ''var error = file.open(ruta_configuracion, File.READ) ''if error == OK: '''var cfg_datos = file.get_var() '''configuracion = cfg_datos '''file.close() ' 'print("Configuración cargada: " + str(configuracion) + "\n")
0 comentarios:
Publicar un comentario