diff options
author | metamuffin <metamuffin@disroot.org> | 2025-09-15 01:26:13 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-09-15 01:38:34 +0200 |
commit | 676d4dcb6c439677b91b1b5cbc0bf08f98e2dd9d (patch) | |
tree | 5cd83591e230833735fbdacf41df5c1d69dd8c0e /client/gui/menus/settings/game_setting.gd | |
parent | 4e196b83a42b9b217e3b7107b55a14cb1a005b84 (diff) | |
download | hurrycurry-676d4dcb6c439677b91b1b5cbc0bf08f98e2dd9d.tar hurrycurry-676d4dcb6c439677b91b1b5cbc0bf08f98e2dd9d.tar.bz2 hurrycurry-676d4dcb6c439677b91b1b5cbc0bf08f98e2dd9d.tar.zst |
Refactor settings; store as JSON; input settings now broken
Diffstat (limited to 'client/gui/menus/settings/game_setting.gd')
-rw-r--r-- | client/gui/menus/settings/game_setting.gd | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/client/gui/menus/settings/game_setting.gd b/client/gui/menus/settings/game_setting.gd index 1c04ad3b..1dfee59e 100644 --- a/client/gui/menus/settings/game_setting.gd +++ b/client/gui/menus/settings/game_setting.gd @@ -31,16 +31,16 @@ func set_parent(parent: GameSetting): func create_row(): var row = preload("res://gui/menus/settings/settings_row.tscn").instantiate() row.description = tr(nskey) - row.reset.connect(func(): Global.set_setting(key, default)) + row.reset.connect(func(): Settings.write(key, default)) return row -func check(): - if default != null: - if not key in Global.settings: - Global.set_setting_unchecked(key, default) - if typeof(default) != typeof(Global.settings[key]): - Global.set_setting_unchecked(key, default) +func load(d: Dictionary): + if d.has(key) && typeof(d[key]) == typeof(default): + Settings.write_unchecked(key, d[key]) + elif default != null: + Settings.write_unchecked(key, default) -func changed_keys(): - if Global.get_setting(key) != default: return [key] - else: return [] +func save(d: Dictionary): + var value = Settings.read(key) + if value == default: return + d[key] = value |