summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorrom <romangraef@gmail.com>2021-04-25 18:59:28 +0200
committerrom <romangraef@gmail.com>2021-04-25 18:59:38 +0200
commit3e8e361c8c6b9a7d02361c2f72a20e5e41873052 (patch)
tree3b6dda00cf4566ffd30a8a6933e4d7c0f93da9e1 /components
parent86c8cf34d53290df113a97c051acade184e4f2f3 (diff)
downloadldjam48-3e8e361c8c6b9a7d02361c2f72a20e5e41873052.tar.gz
ldjam48-3e8e361c8c6b9a7d02361c2f72a20e5e41873052.tar.bz2
ldjam48-3e8e361c8c6b9a7d02361c2f72a20e5e41873052.zip
settings
Diffstat (limited to 'components')
-rw-r--r--components/Settings.gd37
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()
+
+
+