diff options
Diffstat (limited to 'components')
| -rw-r--r-- | components/Settings.gd | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/components/Settings.gd b/components/Settings.gd new file mode 100644 index 0000000..f6f0b41 --- /dev/null +++ b/components/Settings.gd @@ -0,0 +1,37 @@ +extends Node + +var sound_level : int = 100 + +########## +# LOADER # +########## + +onready var _file = File.new() +const _SETTINGS_PATH = "user://settings.json" + +func _save_data(): + return { + 'sound_level': sound_level, + } + +func _load_data(json): + sound_level = json['sound_level'] + +func _load(): + if _file.file_exists(_SETTINGS_PATH): + return + _file.open(_SETTINGS_PATH, File.READ) + var text = _file.get_as_text() + var json = parse_json(text) + _load_data(json) + _file.close() + +func save(): + var json = _save_data() + var text = to_json(json) + _file.open(_SETTINGS_PATH, File.WRITE) + _file.store_string(text) + _file.close() + + + |
