aboutsummaryrefslogtreecommitdiff
path: root/client/global.gd
diff options
context:
space:
mode:
authortpart <tpart120@proton.me>2024-06-30 23:13:37 +0200
committertpart <tpart120@proton.me>2024-06-30 23:13:37 +0200
commit2d477acead01abfe7eb13d0e30d1eab6355d13c5 (patch)
treea34c13ab24ffcf6e1fcc22e8abc30fe98f8a5e9f /client/global.gd
parent21b88fdc4abdc95f6b2d016bcc2a26706790be03 (diff)
downloadhurrycurry-2d477acead01abfe7eb13d0e30d1eab6355d13c5.tar
hurrycurry-2d477acead01abfe7eb13d0e30d1eab6355d13c5.tar.bz2
hurrycurry-2d477acead01abfe7eb13d0e30d1eab6355d13c5.tar.zst
Add language settings
Diffstat (limited to 'client/global.gd')
-rw-r--r--client/global.gd16
1 files changed, 16 insertions, 0 deletions
diff --git a/client/global.gd b/client/global.gd
index bee27fc0..e756fcfe 100644
--- a/client/global.gd
+++ b/client/global.gd
@@ -34,6 +34,12 @@ var default_profile := {
}
var default_settings := {
+ "language": {
+ "type": "dropdown",
+ "options": [tr("System default"), "en", "de"],
+ "value": 0,
+ "description": tr("Language"),
+ },
"fullscreen": {
"type": "toggle",
"value": false,
@@ -131,6 +137,7 @@ func _init():
profile = load_dict("user://profile", default_profile)
settings = load_dict("user://settings", default_settings)
update_fullscreen()
+ update_language()
func _input(event):
if Input.is_action_just_pressed("fullscreen"):
@@ -138,6 +145,15 @@ func _input(event):
save_settings()
update_fullscreen()
+func update_language():
+ var lang_idx = get_setting("language")
+ var lang = settings["language"]["options"][lang_idx]
+
+ if lang_idx != 0: # 0 is system language
+ TranslationServer.set_locale(lang)
+ else:
+ TranslationServer.set_locale(OS.get_locale_language())
+
func update_fullscreen():
if get_setting("fullscreen"):
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)