diff options
Diffstat (limited to 'client/global.gd')
-rw-r--r-- | client/global.gd | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/client/global.gd b/client/global.gd index 6584c1d9..4a985e38 100644 --- a/client/global.gd +++ b/client/global.gd @@ -24,7 +24,13 @@ signal using_joypad_change(using: bool) var default_profile := { "username": "Giovanni", "character": 0, - "last_server_url": "" + "last_server_url": "", + # HINTS: + "has_moved": false, + "has_boosted": false, + "has_interacted": false, + "has_rotated": false, + "has_reset": false } var languages := [tr("System default"), "en", "de"] var using_joypad := false @@ -202,7 +208,24 @@ func set_setting(key: String, value): if !settings.has(key): push_error("Tried to set setting \"%s\", which does not yet exist (missing key)" % key) return - settings[key].set_value(value) + if get_setting(value) != value: + settings[key].set_value(value) + save_settings() + +func get_profile(key: String): + if profile.has(key): + return profile[key] + else: + push_error("Tried to access profile setting \"%s\", which does not exist (missing key)" % key) + return null + +func set_profile(key: String, value): + if !profile.has(key): + push_error("Tried to set profile setting \"%s\", which does not yet exist (missing key)" % key) + return + if profile[key] != value: + profile[key] = value + save_profile() static func interpolate(current, target, dt): return target + (current - target) * exp(-dt) |