diff --git a/src/logic-scenes/main menu/audio_settings.gd b/src/logic-scenes/main menu/audio_settings.gd index 939ce60..2cc83d3 100644 --- a/src/logic-scenes/main menu/audio_settings.gd +++ b/src/logic-scenes/main menu/audio_settings.gd @@ -50,6 +50,9 @@ func _ready() -> void: speech_slider.value_changed.connect(func(value): State.speech_volume = value) sum_slider.value_changed.connect(func(value): State.main_volume = value) + text_lang_selector.item_selected.connect(func(value): State.text_language = value) + speech_lang_selector.item_selected.connect(func(value): State.speech_language = value) + changed.connect(func():has_changed = true) %ResetButton.pressed.connect(_on_reset_button_pressed) diff --git a/src/logic-scenes/main menu/audio_settings.tscn b/src/logic-scenes/main menu/audio_settings.tscn index 2058daa..160cc53 100644 --- a/src/logic-scenes/main menu/audio_settings.tscn +++ b/src/logic-scenes/main menu/audio_settings.tscn @@ -119,7 +119,7 @@ bus = &"music" unique_name_in_owner = true root_node = NodePath("../../SumSlider") libraries = { -"": SubResource("AnimationLibrary_sfx55") +&"": SubResource("AnimationLibrary_sfx55") } [node name="Label3" type="Label" parent="VBoxContainer/GridContainer"] @@ -180,6 +180,7 @@ layout_mode = 2 selected = 0 item_count = 3 popup/item_0/text = "use system language" +popup/item_0/id = 0 popup/item_1/text = "English" popup/item_1/id = 1 popup/item_2/text = "German" @@ -195,6 +196,7 @@ layout_mode = 2 selected = 0 item_count = 3 popup/item_0/text = "use system language" +popup/item_0/id = 0 popup/item_1/text = "English" popup/item_1/id = 1 popup/item_2/text = "German" diff --git a/src/singletons/global_state.gd b/src/singletons/global_state.gd index 5d1f39f..91bbeee 100644 --- a/src/singletons/global_state.gd +++ b/src/singletons/global_state.gd @@ -103,8 +103,8 @@ var current_main_theme:Theme = preload("res://logic-scenes/themes/handwriting.th set(value): text_language = value match text_language: - 0: TranslationServer.set_locale("en") - 1: TranslationServer.set_locale("de") + 1: TranslationServer.set_locale("en") + 2: TranslationServer.set_locale("de") _: TranslationServer.set_locale(OS.get_locale()) @export_enum("system_locale", "english", "german") var speech_language: int = -1: set(value): @@ -140,8 +140,8 @@ func load_user_settings(): file.close() var parsed: Dictionary = JSON.parse_string(raw_json) - for kategory in parsed.keys(): - for key in parsed[kategory].keys(): + for kategory in parsed.values(): + for key in kategory.keys(): set(key, parsed[key]) else: @@ -172,7 +172,9 @@ func save_settings(): "sfx_volume": sfx_volume, "music_muted": music_muted, "music_volume": music_volume, - "speech_volume": speech_volume + "speech_volume": speech_volume, + "speech_language": speech_language, + "text_language": text_language }, "gameplay": { "input_sensitivity": input_sensitivity,