From 06baf4555dc1c7a64bed7d059fbe34c99e9638fb Mon Sep 17 00:00:00 2001 From: metamuffin Date: Fri, 6 Sep 2024 23:43:42 +0200 Subject: refactor settings again (part 1) --- client/menu/blur_setup.gd | 8 ++-- client/menu/entry.gd | 2 +- client/menu/game.gd | 2 +- client/menu/main.tscn | 10 ++--- client/menu/popup_message.gd | 14 +++---- client/menu/settings.gd | 43 ++------------------- client/menu/settings.tscn | 9 +---- client/menu/settings/dropdown_setting.gd | 21 ++++------- client/menu/settings/game_setting.gd | 52 +++++++++++--------------- client/menu/settings/input/input_manager.gd | 35 +++-------------- client/menu/settings/input/input_setting.gd | 16 +++----- client/menu/settings/input/input_value_node.gd | 5 +++ client/menu/settings/preset.gd | 39 ------------------- client/menu/settings/preset_row.gd | 38 +++++++++++++++++++ client/menu/settings/range_setting.gd | 18 ++++----- client/menu/settings/settings_category.gd | 51 ++++++++++++++++++++----- client/menu/settings/settings_root.gd | 36 ++++++++++++++++++ client/menu/settings/settings_row.gd | 1 + client/menu/settings/text_setting.gd | 19 ++++------ client/menu/settings/toggle_setting.gd | 19 ++++------ client/menu/setup.gd | 2 +- 21 files changed, 210 insertions(+), 230 deletions(-) delete mode 100644 client/menu/settings/preset.gd create mode 100644 client/menu/settings/preset_row.gd create mode 100644 client/menu/settings/settings_root.gd (limited to 'client/menu') diff --git a/client/menu/blur_setup.gd b/client/menu/blur_setup.gd index 97729074..b5b5dde9 100644 --- a/client/menu/blur_setup.gd +++ b/client/menu/blur_setup.gd @@ -16,8 +16,8 @@ extends Control func _ready(): - update() - Global.settings_changed.connect(update) + update(Global.get_setting("ui.blur")) + Settings.hook_changed("ui.blur", update) -func update(): - material.set_shader_parameter("enable_blur", Global.get_setting("ui_blur")) +func update(state): + material.set_shader_parameter("enable_blur", state) diff --git a/client/menu/entry.gd b/client/menu/entry.gd index 5ca6dacb..456709ed 100644 --- a/client/menu/entry.gd +++ b/client/menu/entry.gd @@ -18,7 +18,7 @@ extends Menu func _ready(): super() - if not Global.get_setting("setup_complete"): + if not Global.get_setting("gameplay.setup_complete"): await submenu("res://menu/setup.tscn") else: await submenu("res://menu/main.tscn") diff --git a/client/menu/game.gd b/client/menu/game.gd index f50a43a6..a2eb858c 100644 --- a/client/menu/game.gd +++ b/client/menu/game.gd @@ -43,7 +43,7 @@ func _menu_cover(state): game.camera.update_disable_input() func _process(_delta): - if Global.get_setting("debug_info"): + if Global.get_setting("graphics.debug_info"): debug_label.show() debug_label.text = "%d FPS\nDriver: %s" % [Engine.get_frames_per_second(), ProjectSettings.get_setting("rendering/rendering_device/driver")] else: debug_label.hide() diff --git a/client/menu/main.tscn b/client/menu/main.tscn index 94726109..26decd2b 100644 --- a/client/menu/main.tscn +++ b/client/menu/main.tscn @@ -63,27 +63,27 @@ layout_mode = 2 [node name="play" type="Button" parent="side/margin/options/first"] layout_mode = 2 -text = "Play" +text = "c.menu.play" alignment = 0 [node name="change_character" type="Button" parent="side/margin/options/first"] layout_mode = 2 -text = "My Chef" +text = "c.menu.my_chef" alignment = 0 [node name="settings" type="Button" parent="side/margin/options/first"] layout_mode = 2 -text = "Settings" +text = "c.menu.settings" alignment = 0 [node name="credits" type="Button" parent="side/margin/options/first"] layout_mode = 2 -text = "Credits" +text = "c.menu.credits" alignment = 0 [node name="quit" type="Button" parent="side/margin/options/first"] layout_mode = 2 -text = "Quit" +text = "c.menu.quit" alignment = 0 [connection signal="pressed" from="side/margin/options/first/play" to="." method="_on_play_pressed"] diff --git a/client/menu/popup_message.gd b/client/menu/popup_message.gd index 90e86faa..1464e20c 100644 --- a/client/menu/popup_message.gd +++ b/client/menu/popup_message.gd @@ -109,24 +109,24 @@ func _input(_event): Global.set_hint("has_reset", true) func _on_boost_timeout(): - if not Global.get_hint("has_boosted") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_boosted") and not Global.get_setting("ui.touch_controls"): display_hint_msg(tr("Press %s to boost") % display_keybind(tr("SHIFT"), "B")) func _on_move_timeout(): - if not Global.get_hint("has_moved") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_moved") and not Global.get_setting("ui.touch_controls"): display_hint_msg(tr("Use %s to move") % display_keybind("WASD", tr("left stick"))) func _on_interact_timeout(): - if not Global.get_hint("has_interacted") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_interacted") and not Global.get_setting("ui.touch_controls"): var keybind = display_keybind(tr("SPACE"), "A") display_hint_msg(tr("Press %s to pick up items and hold %s to interact with tools") % [keybind, keybind]) func _on_reset_timeout(): - if not Global.get_hint("has_reset") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_reset") and not Global.get_setting("ui.touch_controls"): display_hint_msg(tr("Press %s to reset the camera view") % display_keybind("R", "Y")) func _on_zoom_timeout(): - if not Global.get_hint("has_zoomed") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_zoomed") and not Global.get_setting("ui.touch_controls"): display_hint_msg(tr("Use %s to zoom in/out") % display_keybind(tr("PageUp/PageDown"), "LT/RT")) func display_keybind(keyboard: String, joypad: String, touch = null) -> String: @@ -143,11 +143,11 @@ func any_action_just_pressed(actions: Array) -> bool: return false func _on_rotate_camera_timeout(): - if not Global.get_hint("has_rotated") and not Global.get_setting("touch_controls"): + if not Global.get_hint("has_rotated") and not Global.get_setting("ui.touch_controls"): display_hint_msg(tr("Use %s to rotate the camera view") % display_keybind(tr("arrow keys"), tr("right stick"))) func _on_nametags_timeout(): - if not Global.get_hint("has_seen_nametags") and not Global.get_setting("usernames"): + if not Global.get_hint("has_seen_nametags") and not Global.get_setting("graphics.usernames"): Global.set_hint("has_seen_nametags", true) display_hint_msg(tr("Username tags can be enabled/disabled in the settings")) diff --git a/client/menu/settings.gd b/client/menu/settings.gd index eb143900..b47331c6 100644 --- a/client/menu/settings.gd +++ b/client/menu/settings.gd @@ -16,52 +16,17 @@ # extends Menu -const SETTINGS_ROW_SCENE = preload("res://menu/settings/settings_row.tscn") - -@onready var settings_tabs: TabContainer = $OuterGap/Panel/InnerGap/VBoxContainer/TabContainer +@onready var container = $OuterGap/Panel/InnerGap/VBoxContainer func _ready(): super() - update_rows() + Global.settings_tree._update_row() + container.add_child(Global.settings_tree.row) + container.move_child(Global.settings_tree.row, 1) func _on_back_pressed(): exit() func exit(): Global.save_settings() - Global.apply_settings() super() - -func update_rows(fix_focus = false): - for c in settings_tabs.get_children(): - c.queue_free() - - for category: SettingsCategory in Global.default_settings: - var category_settings = category.settings - var scroll := ScrollContainerCustom.new() - var options := VBoxContainer.new() - scroll.name = category.name - scroll.size_flags_horizontal = Control.SIZE_EXPAND_FILL - settings_tabs.add_child(scroll) - options.size_flags_horizontal = Control.SIZE_EXPAND_FILL - scroll.add_child(options) - - var category_presets = category.presets - if category_presets != null: - for i: Preset in category_presets: - var row: SettingsRow = SETTINGS_ROW_SCENE.instantiate() - options.add_child(row) - row.label.text = i.label - row.reset_button.visible = false - for b in i.buttons(): - row.value_parent.add_child(b) - - for k: String in category_settings.keys(): - var row: SettingsRow = Global.settings[k].get_row() - options.add_child(row) - - if fix_focus: - pass - # TODO: Not implemented! - # await get_tree().process_frame - # Global.focus_first(self) diff --git a/client/menu/settings.tscn b/client/menu/settings.tscn index 9f523f7c..0a55e222 100644 --- a/client/menu/settings.tscn +++ b/client/menu/settings.tscn @@ -1,12 +1,10 @@ -[gd_scene load_steps=6 format=3 uid="uid://8ic77jmadadj"] +[gd_scene load_steps=5 format=3 uid="uid://8ic77jmadadj"] [ext_resource type="Theme" uid="uid://b0qmvo504e457" path="res://menu/theme/theme.tres" id="1_foq3a"] [ext_resource type="Script" path="res://menu/settings.gd" id="2_3hgm8"] [ext_resource type="Material" uid="uid://beea1pc5nt67r" path="res://menu/theme/dark_blur_material.tres" id="3_8nykw"] [ext_resource type="Script" path="res://menu/blur_setup.gd" id="4_v6q3y"] -[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_85urc"] - [node name="SettingsMenu" type="Control"] layout_mode = 3 anchors_preset = 15 @@ -52,11 +50,6 @@ size_flags_horizontal = 0 theme_override_font_sizes/font_size = 36 text = "Settings" -[node name="TabContainer" type="TabContainer" parent="OuterGap/Panel/InnerGap/VBoxContainer"] -layout_mode = 2 -size_flags_vertical = 3 -theme_override_styles/panel = SubResource("StyleBoxEmpty_85urc") - [node name="Back" type="Button" parent="OuterGap/Panel/InnerGap/VBoxContainer"] layout_mode = 2 size_flags_vertical = 8 diff --git a/client/menu/settings/dropdown_setting.gd b/client/menu/settings/dropdown_setting.gd index e57fc40f..62162320 100644 --- a/client/menu/settings/dropdown_setting.gd +++ b/client/menu/settings/dropdown_setting.gd @@ -18,23 +18,18 @@ extends GameSetting var options: Array -func _init(new_description: String, new_preset: int, new_options: Array): - assert(new_preset < new_options.size()) - super(new_description, new_preset) +func _init(new_id: String, new_default, new_options: Array): + super(new_id, new_default) options = new_options func _update_row(): super() row.value_node = OptionButton.new() for i in options: - row.value_node.add_item(i) - row.value_node.select(_value) + row.value_node.add_item(tr(nskey + "." + i)) + row.value_node.select(options.find(Global.get_setting(key))) + if not row.value_node.item_selected.is_connected(from_ui): + row.value_node.item_selected.connect(from_ui) -func fetch_setting(): - if row != null: - _value = row.value_node.selected - -func set_value(v): - super(v) - if row != null: - row.value_node.selected = _value +func from_ui(index): + Global.set_setting(key, options[index]) diff --git a/client/menu/settings/game_setting.gd b/client/menu/settings/game_setting.gd index afe1fe65..2846cbe3 100644 --- a/client/menu/settings/game_setting.gd +++ b/client/menu/settings/game_setting.gd @@ -16,39 +16,31 @@ class_name GameSetting extends Object -var preset -var _value -var description: String +var default +var key: String +var nskey: String -var row: SettingsRow +var row: Node -func _init(new_description: String, new_preset): - preset = new_preset - set_value(new_preset) - description = new_description +func _init(new_id: String, new_default = null): + default = new_default + key = new_id -func reset(): - set_value(preset) - -func get_row() -> SettingsRow: - _update_row() - return row +func set_parent(parent: GameSetting): + if parent != null: key = parent.key + "." + key + nskey = "c.settings." + key func _update_row(): - if row != null: - row.queue_free() - row = preload("res://menu/settings/settings_row.tscn").instantiate() - row.description = description - row.reset.connect(reset) - -func fetch_setting(): - pass + if row == null: row = preload("res://menu/settings/settings_row.tscn").instantiate() + row.description = tr(nskey) + if not row.reset.is_connected(reset): row.reset.connect(reset) -func get_value(): - return _value - -func set_value(v): - if v is Array: - _value = v.duplicate(true) - else: - _value = v +func reset(): + Global.set_setting(key, default) + +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) diff --git a/client/menu/settings/input/input_manager.gd b/client/menu/settings/input/input_manager.gd index 96cdca09..784b4974 100644 --- a/client/menu/settings/input/input_manager.gd +++ b/client/menu/settings/input/input_manager.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 tpart +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -15,32 +16,6 @@ # extends Node -var action_descriptions = { - "forwards": tr("Move forwards"), - "backwards": tr("Move backwards"), - "left": tr("Move left"), - "right": tr("Move right"), - "rotate_left": tr("Rotate camera to the left"), - "rotate_right": tr("Rotate camera to the right"), - "rotate_up": tr("Rotate camera upwards"), - "rotate_down": tr("Rotate camera downwards"), - "interact": tr("Interact", "Interacting with items, etc."), - "boost": tr("Boost movement"), - "zoom_in": tr("Zoom in"), - "zoom_out": tr("Zoom out"), - "chat": tr("Toggle chat", "Toggle chat on or off"), - "reset": tr("Reset camera view"), - "fullscreen": tr("Toggle fullscreen"), - "previous": tr("Previous"), - "next": tr("Next"), - "start_game": tr("Start game"), - "join_spectate": tr("Join / Spectate"), - "zoom_in_discrete": tr("Zoom in (discrete)"), - "zoom_out_discrete": tr("Zoom out (discrete)"), - "scroll_down": tr("Scroll down"), - "scroll_up": tr("Scroll up"), -} - var default_input_map = {} var input_map @@ -56,12 +31,12 @@ func get_input_map() -> Dictionary: kb[a] = input_events return kb -func input_map_to_settings_dictionary(map: Dictionary) -> Dictionary: - var settings_dict := {} +func input_map_to_settings(map: Dictionary) -> Array: + var entries := [] for k in map.keys(): var events = map[k] - settings_dict[k] = InputSetting.new(action_descriptions[k] if action_descriptions.has(k) else k, events) - return settings_dict + entries.append(InputSetting.new(k, events)) + return entries func settings_dictionary_to_input_map(settings: Dictionary) -> Dictionary: var map := {} diff --git a/client/menu/settings/input/input_setting.gd b/client/menu/settings/input/input_setting.gd index eec68bdc..e32e800c 100644 --- a/client/menu/settings/input/input_setting.gd +++ b/client/menu/settings/input/input_setting.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 tpart +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -21,14 +22,9 @@ const INPUT_VALUE_NODE_SCENE = preload("res://menu/settings/input/input_value_no func _update_row(): super() row.value_node = INPUT_VALUE_NODE_SCENE.instantiate() - row.value_node.value = _value + row.value_node.value = Global.get_setting(key) + if not row.value_node.changed.is_connected(from_ui): + row.value_node.changed.connect(from_ui) -func fetch_setting(): - if row != null: - _value = row.value_node.value - -func set_value(v): - super(v) - if row != null: - row.value_node.value = _value - row.value_node.update() +func from_ui(): + Global.set_setting(key, row.value_node.value) diff --git a/client/menu/settings/input/input_value_node.gd b/client/menu/settings/input/input_value_node.gd index 125a946b..9f89416b 100644 --- a/client/menu/settings/input/input_value_node.gd +++ b/client/menu/settings/input/input_value_node.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 tpart +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -19,6 +20,8 @@ class_name InputValueNode var value: Array[InputEvent] = [] var listening := false +signal changed() + @onready var actions_container: VBoxContainer = $ActionsContainer @onready var add_button: Button = $Add @onready var add_text = add_button.text @@ -55,6 +58,7 @@ func update(fix_focus: bool = false): func erase_event(e: InputEvent): value.erase(e) update(true) + changed.emit() func _input(e: InputEvent): if listening: @@ -66,6 +70,7 @@ func _input(e: InputEvent): value.append(e) _on_add_pressed() update() + changed.emit() func events_equal(e1: InputEvent, e2: InputEvent) -> bool: if e1 is InputEventKey and e2 is InputEventKey: diff --git a/client/menu/settings/preset.gd b/client/menu/settings/preset.gd deleted file mode 100644 index bb13b570..00000000 --- a/client/menu/settings/preset.gd +++ /dev/null @@ -1,39 +0,0 @@ -# Hurry Curry! - a game about cooking -# Copyright 2024 nokoe -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, version 3 of the License only. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -class_name Preset -extends Object - -var label: String -var options: Dictionary - -func _init(name_: String, options_: Dictionary): - label = name_ - options = options_ - -func apply(preset_name: String): - var preset: Dictionary = options[preset_name] - for i in preset.keys(): - var setting_name: String = i - Global.set_setting(setting_name, preset[setting_name]) - -func buttons() -> Array[Button]: - var arr: Array[Button] = [] - for i in options.keys(): - var button := Button.new() - button.pressed.connect(apply.bind(i)) - button.text = i - arr.push_back(button) - return arr diff --git a/client/menu/settings/preset_row.gd b/client/menu/settings/preset_row.gd new file mode 100644 index 00000000..808f6381 --- /dev/null +++ b/client/menu/settings/preset_row.gd @@ -0,0 +1,38 @@ +# Hurry Curry! - a game about cooking +# Copyright 2024 nokoe +# Copyright 2024 metamuffin +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, version 3 of the License only. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +class_name Preset +extends GameSetting + +var options: Dictionary +var arr: Array[Button] + +func _init(id: String, options_: Dictionary): + super(id) + options = options_ + +func apply(preset_name: String): + var preset: Dictionary = options[preset_name] + for i in preset.keys(): + var setting_name: String = i + Global.set_setting(setting_name, preset[setting_name]) + +func _update_row(): + for i in options.keys(): + var button := Button.new() + button.pressed.connect(apply.bind(i)) + button.text = i + arr.push_back(button) diff --git a/client/menu/settings/range_setting.gd b/client/menu/settings/range_setting.gd index d13e2262..d8616d54 100644 --- a/client/menu/settings/range_setting.gd +++ b/client/menu/settings/range_setting.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 nokoe +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -21,8 +22,8 @@ var max_value: float var tick_count var smooth: bool -func _init(new_description: String, new_preset: float, new_min_value: float, new_max_value: float, new_smooth: bool = true, new_tick_count = null): - super(new_description, new_preset) +func _init(new_id: String, new_default: float, new_min_value: float, new_max_value: float, new_smooth: bool = true, new_tick_count = null): + super(new_id, new_default) min_value = new_min_value max_value = new_max_value tick_count = new_tick_count @@ -35,13 +36,8 @@ func _update_row(): row.value_node.max_value = max_value row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1)) - row.value_node.value = _value + row.value_node.value = Global.get_setting(key) + if not row.value_node.value_changed.is_connected(from_ui): row.value_node.value_changed.connect(from_ui) -func fetch_setting(): - if row != null: - _value = row.value_node.value - -func set_value(v): - super(v) - if row != null: - row.value_node.value = _value +func from_ui(): + Global.set_setting(key, row.value_node.value) diff --git a/client/menu/settings/settings_category.gd b/client/menu/settings/settings_category.gd index c4601429..7425ea19 100644 --- a/client/menu/settings/settings_category.gd +++ b/client/menu/settings/settings_category.gd @@ -14,15 +14,48 @@ # along with this program. If not, see . # class_name SettingsCategory -extends Object +extends GameSetting -var name: String -var id: String -var settings: Dictionary # Dictionary[String, GameSetting] -var presets # Array[Preset] | null +var settings: Array # Dictionary[String, GameSetting] +var presets # Array[Preset] -func _init(new_name: String, new_id: String, new_settings: Dictionary, new_presets = null): - name = new_name - id = new_id +var options: VBoxContainer + +func _init(new_id: String, new_settings: Array, new_presets = []): + super(new_id) settings = new_settings - presets = new_presets + presets = new_presets + +func set_parent(parent: GameSetting): + super(parent) + for c in settings: + c.set_parent(self) + +func _update_row(): + if row == null: row = ScrollContainerCustom.new() + if options == null: options = VBoxContainer.new() + row.name = tr(nskey) + row.size_flags_horizontal = Control.SIZE_EXPAND_FILL + options.size_flags_horizontal = Control.SIZE_EXPAND_FILL + + if options.get_parent() != row: + row.add_child(options) + + if presets != null: + for i in presets: + var prow: SettingsRow = preload("res://menu/settings/settings_row.tscn").instantiate() + options.add_child(prow) + prow.label.text = i.label + prow.reset_button.visible = false + for b in i.buttons(): + prow.value_parent.add_child(b) + + for r in settings: + r._update_row() + if r.row.get_parent() != options: + print(r.row) + options.add_child(r.row) + +func check(): + for c in settings: + c.check() diff --git a/client/menu/settings/settings_root.gd b/client/menu/settings/settings_root.gd new file mode 100644 index 00000000..5acf7f11 --- /dev/null +++ b/client/menu/settings/settings_root.gd @@ -0,0 +1,36 @@ +# Hurry Curry! - a game about cooking +# Copyright 2024 metamuffin +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, version 3 of the License only. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +extends GameSetting +class_name SettingsRoot + +var children: Array +func _init(new_children: Array): + super("root") + children = new_children + for c in children: + c.set_parent(null) + +func _update_row(): + if row == null: row = TabContainer.new() + row.size_flags_vertical = Control.SIZE_EXPAND_FILL + for r in children: + r._update_row() + if r.row.get_parent() != row: + row.add_child(r.row) + +func check(): + for c in children: + c.check() diff --git a/client/menu/settings/settings_row.gd b/client/menu/settings/settings_row.gd index f5621d78..68340918 100644 --- a/client/menu/settings/settings_row.gd +++ b/client/menu/settings/settings_row.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 nokoe +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by diff --git a/client/menu/settings/text_setting.gd b/client/menu/settings/text_setting.gd index faafa610..6fa6b1ef 100644 --- a/client/menu/settings/text_setting.gd +++ b/client/menu/settings/text_setting.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 nokoe +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -18,21 +19,17 @@ extends GameSetting var placeholder: String -func _init(new_description: String, new_preset: String, new_placeholder: String = ""): - super(new_description, new_preset) +func _init(new_id: String, new_default: String, new_placeholder: String = ""): + super(new_id, new_default) placeholder = new_placeholder func _update_row(): super() row.value_node = LineEdit.new() - row.value_node.text = _value + row.value_node.text = Global.get_setting(key) row.value_node.placeholder_text = placeholder + if not row.value_node.text_changed.is_connected(from_ui): + row.value_node.text_changed.connect(from_ui) -func fetch_setting(): - if row != null: - _value = row.value_node.text - -func set_value(v): - super(v) - if row != null: - row.value_node.text = _value +func from_ui(text): + Global.set_setting(key, text) diff --git a/client/menu/settings/toggle_setting.gd b/client/menu/settings/toggle_setting.gd index 6d4150d4..45f08d9f 100644 --- a/client/menu/settings/toggle_setting.gd +++ b/client/menu/settings/toggle_setting.gd @@ -1,5 +1,6 @@ # Hurry Curry! - a game about cooking # Copyright 2024 nokoe +# Copyright 2024 metamuffin # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -16,19 +17,15 @@ class_name ToggleSetting extends GameSetting -func _init(new_description: String, new_preset: bool): - super(new_description, new_preset) - -func fetch_setting(): - if row != null: - _value = row.value_node.button_pressed +func _init(new_id: String, new_default: bool): + super(new_id, new_default) func _update_row(): super() row.value_node = CheckButton.new() - row.value_node.button_pressed = _value + row.value_node.button_pressed = Global.get_setting(key) + if not row.value_node.pressed.is_connected(from_ui): + row.value_node.pressed.connect(from_ui) -func set_value(v): - super(v) - if row != null: - row.value_node.button_pressed = _value +func from_ui(): + Global.set_setting(key, row.value_node.button_pressed) diff --git a/client/menu/setup.gd b/client/menu/setup.gd index 6c3c90cd..16944c7c 100644 --- a/client/menu/setup.gd +++ b/client/menu/setup.gd @@ -73,5 +73,5 @@ func _on_sign_pressed(): Global.set_profile("username", username.text) Global.set_profile("character", character) - Global.set_setting("setup_complete", true) + Global.set_setting("gameplay.setup_complete", true) replace_menu("res://menu/main.tscn") -- cgit v1.2.3-70-g09d2 From 03bdf875aec224ee8f74c259ed776da52bad54ff Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 00:22:55 +0200 Subject: adjust some more translation strings --- client/menu/settings/preset_row.gd | 25 +++++++++----- client/menu/settings/range_setting.gd | 7 ++-- client/menu/settings/settings_category.gd | 15 ++------ client/menu/warning_popup.gd | 1 - locale/ar.ini | 30 ++++++++-------- locale/de.ini | 30 ++++++++-------- locale/en.ini | 57 ++++++++++++++++--------------- locale/es.ini | 30 ++++++++-------- locale/eu.ini | 30 ++++++++-------- locale/fi.ini | 30 ++++++++-------- locale/fr.ini | 30 ++++++++-------- locale/he.ini | 30 ++++++++-------- locale/ja.ini | 30 ++++++++-------- locale/pl.ini | 30 ++++++++-------- locale/pt.ini | 30 ++++++++-------- locale/tr.ini | 30 ++++++++-------- locale/zh_Hans.ini | 30 ++++++++-------- locale/zh_Hant.ini | 30 ++++++++-------- 18 files changed, 246 insertions(+), 249 deletions(-) (limited to 'client/menu') diff --git a/client/menu/settings/preset_row.gd b/client/menu/settings/preset_row.gd index 808f6381..7eca0c3c 100644 --- a/client/menu/settings/preset_row.gd +++ b/client/menu/settings/preset_row.gd @@ -14,7 +14,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . # -class_name Preset +class_name PresetRow extends GameSetting var options: Dictionary @@ -24,15 +24,22 @@ func _init(id: String, options_: Dictionary): super(id) options = options_ +var prefix = "" +func set_parent(parent): + super(parent) + if parent != null: prefix = parent.key + func apply(preset_name: String): - var preset: Dictionary = options[preset_name] + var preset = options[preset_name] for i in preset.keys(): - var setting_name: String = i - Global.set_setting(setting_name, preset[setting_name]) + Global.set_setting(prefix + "." + i, preset[i]) func _update_row(): - for i in options.keys(): - var button := Button.new() - button.pressed.connect(apply.bind(i)) - button.text = i - arr.push_back(button) + super() + if row.value_node == null: + row.value_node = HBoxContainer.new() + for i in options.keys(): + var button := Button.new() + button.pressed.connect(apply.bind(i)) + button.text = tr(nskey + "." + i) + row.value_node.add_child(button) diff --git a/client/menu/settings/range_setting.gd b/client/menu/settings/range_setting.gd index d8616d54..49db7c21 100644 --- a/client/menu/settings/range_setting.gd +++ b/client/menu/settings/range_setting.gd @@ -37,7 +37,8 @@ func _update_row(): row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1)) row.value_node.value = Global.get_setting(key) - if not row.value_node.value_changed.is_connected(from_ui): row.value_node.value_changed.connect(from_ui) + if not row.value_node.value_changed.is_connected(from_ui): + row.value_node.value_changed.connect(from_ui) -func from_ui(): - Global.set_setting(key, row.value_node.value) +func from_ui(value): + Global.set_setting(key, value) diff --git a/client/menu/settings/settings_category.gd b/client/menu/settings/settings_category.gd index 7425ea19..a80c12c9 100644 --- a/client/menu/settings/settings_category.gd +++ b/client/menu/settings/settings_category.gd @@ -17,14 +17,12 @@ class_name SettingsCategory extends GameSetting var settings: Array # Dictionary[String, GameSetting] -var presets # Array[Preset] var options: VBoxContainer -func _init(new_id: String, new_settings: Array, new_presets = []): +func _init(new_id: String, new_settings: Array): super(new_id) settings = new_settings - presets = new_presets func set_parent(parent: GameSetting): super(parent) @@ -41,19 +39,10 @@ func _update_row(): if options.get_parent() != row: row.add_child(options) - if presets != null: - for i in presets: - var prow: SettingsRow = preload("res://menu/settings/settings_row.tscn").instantiate() - options.add_child(prow) - prow.label.text = i.label - prow.reset_button.visible = false - for b in i.buttons(): - prow.value_parent.add_child(b) - for r in settings: r._update_row() + print(r.row) if r.row.get_parent() != options: - print(r.row) options.add_child(r.row) func check(): diff --git a/client/menu/warning_popup.gd b/client/menu/warning_popup.gd index 20741834..fd23a30a 100644 --- a/client/menu/warning_popup.gd +++ b/client/menu/warning_popup.gd @@ -2,7 +2,6 @@ extends Menu class_name WarningPopup func _ready(): - print(self.data) $CenterContainer/Panel/MarginContainer/VBoxContainer/Message.text = self.data func _on_accept_pressed(): diff --git a/locale/ar.ini b/locale/ar.ini index 701df5b9..5e4869c9 100644 --- a/locale/ar.ini +++ b/locale/ar.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=زر القائمة/الهمبرغر/Menu c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=عرض معلومات التصحيح (fps، إلخ) +c.settings.graphics.debug_info=عرض معلومات التصحيح (fps، إلخ) c.settings.graphics.fullscreen=إملأ الشاشة c.settings.graphics.fullscreen.always=دائماً c.settings.graphics.fullscreen.keep=كما هو @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=قم دائمًا بتمديد الجري إل c.settings.graphics.gi=إضاءة عالمية c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI -c.settings.glow=توهج +c.settings.graphics.glow=توهج c.settings.graphics=رسوميات c.settings.graphics.aa=تقنية التنعيم c.settings.graphics.ao=انسداد المحيط c.settings.graphics.taa=تقنية التنعيم الزمني -c.settings.grass_amount=كمية العشب الـ3D للخانة -c.settings.language=اللغة -c.settings.language.system=الوضع الافتراضي للجهاز +c.settings.graphics.grass_amount=كمية العشب الـ3D للخانة +c.settings.ui.language=اللغة +c.settings.ui.language.system=الوضع الافتراضي للجهاز c.settings.graphics.lq_trees=أشجار Low-poly c.settings.other= -c.settings.preset_high=عالي -c.settings.preset_low=ضعيف -c.settings.preset_medium=متوسط -c.settings.server_data=دليل الـserver data (اتركوه فارغًا للبحث التلقائي) -c.settings.server_path=ملف للـserver binary (اتركوه فارغًا للبحث في PATH) -c.settings.server_path.placeholder=مسار الملف -c.settings.shadows=ظلال -c.settings.smooth_camera=سلّس حركة الكاميرا +c.settings.graphics.preset.high=عالي +c.settings.graphics.preset.low=ضعيف +c.settings.graphics.preset.medium=متوسط +c.settings.other.server_data=دليل الـserver data (اتركوه فارغًا للبحث التلقائي) +c.settings.other.server_path=ملف للـserver binary (اتركوه فارغًا للبحث في PATH) +c.settings.other.server_path.placeholder=مسار الملف +c.settings.graphics.shadows=ظلال +c.settings.gameplay.smooth_camera=سلّس حركة الكاميرا c.settings.ui=الإسم c.settings.ui.scale_factor=عامل حجم واجهة المستخدم c.settings.ui.scale_mode=طريقة تحجيم واجهة المستخدم c.settings.ui.scale_mode.resize=تحديد الحجم تلقائيًا c.settings.ui.touch_controls=فعّل شاشة اللمس -c.settings.ui_blur=موّه واجهة المستخدم +c.settings.graphics.ui_blur=موّه واجهة المستخدم c.settings.username=الإسم c.setup.contract_title=عقد عمل c.setup.par00=هذا عقد ملزم بينكم (الموظف) وشركة موستر فوودز(Musterfoods) المحدودة (صاحب العمل) للعمل كطهاة أو نادلين. @@ -154,7 +154,7 @@ unknown551=غير موجود unknown568=تسريحة الشعر %d unknown572=النماذج unknown576=الاصوات -unknown59=تم الانتهاء من الإعداد الأولي. (إزيلوا علامة الإختيار وأعدوا التشغيل لإعادة الدخول) +c.settings.gameplay.setup_completed=تم الانتهاء من الإعداد الأولي. (إزيلوا علامة الإختيار وأعدوا التشغيل لإعادة الدخول) unknown622=يجب عليكم ملء جميع الحقول. unknown626=حسنا unknown63=بدأ البرنامج التعليمي diff --git a/locale/de.ini b/locale/de.ini index e76c0aac..4a52d1c8 100644 --- a/locale/de.ini +++ b/locale/de.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard=%s (Tastatur) c.settings.input.mouse_button=Maustaste %s c.settings.input.other_event=Anderes Ereignis c.settings.input.press_any_key=Drücke eine Taste... -c.settings.debug_info=Diagnosedaten anzeigen (Bildrate, etc.) +c.settings.graphics.debug_info=Diagnosedaten anzeigen (Bildrate, etc.) c.settings.graphics.fullscreen=Vollbild c.settings.graphics.fullscreen.always=Immer c.settings.graphics.fullscreen.keep=Beibehalten @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=Schub immer bis zum Anschlag verlängern c.settings.graphics.gi=Globale Beleuchtung c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GlobaleBeleuchtung -c.settings.glow=Glow aktivieren +c.settings.graphics.glow=Glow aktivieren c.settings.graphics=Grafikvoreinstellung c.settings.graphics.aa=Kantenglättung c.settings.graphics.ao=Umgebungsverdeckung c.settings.graphics.taa=Zeitliche Kantenglättung -c.settings.grass_amount=3D-Grasmenge pro Tile -c.settings.language=Sprache -c.settings.language.system=Systemstandard +c.settings.graphics.grass_amount=3D-Grasmenge pro Tile +c.settings.ui.language=Sprache +c.settings.ui.language.system=Systemstandard c.settings.graphics.lq_trees=Low-poly-Bäume c.settings.other=Sonstiges -c.settings.preset_high=Hoch -c.settings.preset_low=Niedrig -c.settings.preset_medium=Mittel -c.settings.server_data=Server Datenverzeichnis (leer lassen, um automatisch zu erkennen) -c.settings.server_path=Pfad zum Server (leer lassen, um PATH zu durchsuchen) -c.settings.server_path.placeholder=Pfad eingeben -c.settings.shadows=Schatten aktivieren -c.settings.smooth_camera=Kameradrehung glätten +c.settings.graphics.preset.high=Hoch +c.settings.graphics.preset.low=Niedrig +c.settings.graphics.preset.medium=Mittel +c.settings.other.server_data=Server Datenverzeichnis (leer lassen, um automatisch zu erkennen) +c.settings.other.server_path=Pfad zum Server (leer lassen, um PATH zu durchsuchen) +c.settings.other.server_path.placeholder=Pfad eingeben +c.settings.graphics.shadows=Schatten aktivieren +c.settings.gameplay.smooth_camera=Kameradrehung glätten c.settings.ui=Benutzeroberfläche c.settings.ui.scale_factor=Benutzeroberflächen Skalierungs Faktor c.settings.ui.scale_mode=Benutzeroberflächen Skalierungs Modus c.settings.ui.scale_mode.resize=Skalieren c.settings.ui.touch_controls=Touchsteuerelemente aktivieren -c.settings.ui_blur=Benutzeroberflächenunschärfe +c.settings.graphics.ui_blur=Benutzeroberflächenunschärfe c.settings.username=Benutzername c.setup.contract_title=ARBEITSVERTRAG c.setup.par00=Dies ist ein verbindlicher Vertrag zwischen Ihnen (der/die Angestelte) und Musterfoods GmbH. Sie verpflichten sich, Ihren Aufgaben als Koch/Köchin bzw. Bedienung nachzugehen. @@ -154,7 +154,7 @@ unknown551=Nicht verfügbar unknown568=Frisur %d unknown572=Modelle unknown576=Soundeffekte -unknown59=Ersteinrichtung abgeschlossen (Deaktivieren und Spiel neu starten zum Neueinrichten) +c.settings.gameplay.setup_completed=Ersteinrichtung abgeschlossen (Deaktivieren und Spiel neu starten zum Neueinrichten) unknown622=Sie müssen alle verlangten Felder ausfüllen. unknown626=Akzeptieren unknown63=Anleitung gestartet diff --git a/locale/en.ini b/locale/en.ini index 472c88db..38dcff81 100644 --- a/locale/en.ini +++ b/locale/en.ini @@ -75,43 +75,44 @@ c.settings.audio.master_volume=Master Volume c.settings.audio.music_volume=Music Volume c.settings.audio.sfx_volume=SFX Volume c.settings.audio=Audio -c.settings.input.add=Add new -c.settings.input.joypad_axis=Joypad axis %s -c.settings.input.joypad=%s (Joypad) -c.settings.input.keyboard=%s (Keyboard) -c.settings.input.mouse_button=Mouse button %s -c.settings.input.other_event=Other event -c.settings.input.press_any_key=Press any key... -c.settings.input=Controls -c.settings.debug_info=Display debug info (Framerate, etc.) +c.settings.graphics.debug_info=Display debug info (Framerate, etc.) +c.settings.gameplay.extend_boost=Always extend boost to maximum duration +c.settings.gameplay=Gameplay +c.settings.graphics.glow=Enable glow +c.settings.graphics.aa=Anti-aliasing +c.settings.graphics.ao=Ambient occlusion c.settings.graphics.fullscreen.always=Always c.settings.graphics.fullscreen.keep=Keep c.settings.graphics.fullscreen.never=Never c.settings.graphics.fullscreen=Fullscreen -c.settings.gameplay.extend_boost=Always extend boost to maximum duration -c.settings.gameplay=Gameplay c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI c.settings.graphics.gi=Global illumination -c.settings.glow=Enable glow -c.settings.graphics.aa=Anti-aliasing -c.settings.graphics.ao=Ambient occlusion +c.settings.graphics.lq_trees=Low-poly trees +c.settings.graphics.preset.high=High +c.settings.graphics.preset.low=Low +c.settings.graphics.preset.medium=Medium +c.settings.graphics.preset=Load preset c.settings.graphics.taa=Temporal Anti-Aliasing c.settings.graphics=Graphics -c.settings.grass_amount=3D grass amount per grass tile -c.settings.language.system=System default -c.settings.language=Language -c.settings.graphics.lq_trees=Low-poly trees +c.settings.graphics.grass_amount=3D grass amount per grass tile +c.settings.input.add=Add new +c.settings.input.joypad_axis=Joypad axis %s +c.settings.input.joypad=%s (Joypad) +c.settings.input.keyboard=%s (Keyboard) +c.settings.input.mouse_button=Mouse button %s +c.settings.input.other_event=Other event +c.settings.input.press_any_key=Press any key... +c.settings.input=Controls +c.settings.ui.language.system=System default +c.settings.ui.language=Language c.settings.other=Other -c.settings.preset_high=High -c.settings.preset_low=Low -c.settings.preset_medium=Medium -c.settings.server_data=Server data directory (leave empty to auto-detect) -c.settings.server_path.placeholder=Enter path -c.settings.server_path=Server binary (leave empty to search PATH) -c.settings.shadows=Enable shadows -c.settings.smooth_camera=Smooth camera rotation -c.settings.ui_blur=Enable UI blur +c.settings.other.server_data=Server data directory (leave empty to auto-detect) +c.settings.other.server_path.placeholder=Enter path +c.settings.other.server_path=Server binary (leave empty to search PATH) +c.settings.graphics.shadows=Enable shadows +c.settings.gameplay.smooth_camera=Smooth camera rotation +c.settings.graphics.ui_blur=Enable UI blur c.settings.ui.scale_factor=UI scale factor c.settings.ui.scale_mode.resize=Resize c.settings.ui.scale_mode=UI scale mode @@ -162,7 +163,7 @@ unknown564=Server and client versions do not match. Server: %d.%d, Client: %d.%d unknown568=Hairstyle %d unknown572=Models unknown576=Sounds -unknown59=Initial setup complete. (Uncheck and restart to reenter) +c.settings.gameplay.setup_completed=Initial setup complete. (Uncheck and restart to reenter) unknown598=[/table]%n%n%n unknown622=You must fill out all requested fields. unknown626=Accept diff --git a/locale/es.ini b/locale/es.ini index 14951de4..8af6d014 100644 --- a/locale/es.ini +++ b/locale/es.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=Botón de menú c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=Mostrar información de depuración (Cuadros por segundo, etc.) +c.settings.graphics.debug_info=Mostrar información de depuración (Cuadros por segundo, etc.) c.settings.graphics.fullscreen=Pantalla completa c.settings.graphics.fullscreen.always=Siempre c.settings.graphics.fullscreen.keep=Mantener @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=Siempre extienda el impulso a la duración máx c.settings.graphics.gi=Iluminación global c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI -c.settings.glow=Activar brillo +c.settings.graphics.glow=Activar brillo c.settings.graphics=Gráficos c.settings.graphics.aa=Antialiasing c.settings.graphics.ao=Oclusión ambiental c.settings.graphics.taa=Antialiasing temporal -c.settings.grass_amount=cantidad de hierba 3D por loseta de césped -c.settings.language=Lengua -c.settings.language.system=Sistema por defecto +c.settings.graphics.grass_amount=cantidad de hierba 3D por loseta de césped +c.settings.ui.language=Lengua +c.settings.ui.language.system=Sistema por defecto c.settings.graphics.lq_trees=Árboles con pocos polígonos c.settings.other= -c.settings.preset_high=Alto -c.settings.preset_low=Bajo -c.settings.preset_medium=Medio -c.settings.server_data=Directorio de datos del servidor (deja vacío para detectar automáticamente) -c.settings.server_path=Binario del servidor (deja vacío para buscar RUTA) -c.settings.server_path.placeholder=Pone ruta -c.settings.shadows=Activar sombras -c.settings.smooth_camera=Interpolar la rotación de la cámara +c.settings.graphics.preset.high=Alto +c.settings.graphics.preset.low=Bajo +c.settings.graphics.preset.medium=Medio +c.settings.other.server_data=Directorio de datos del servidor (deja vacío para detectar automáticamente) +c.settings.other.server_path=Binario del servidor (deja vacío para buscar RUTA) +c.settings.other.server_path.placeholder=Pone ruta +c.settings.graphics.shadows=Activar sombras +c.settings.gameplay.smooth_camera=Interpolar la rotación de la cámara c.settings.ui=Nombre de usuario c.settings.ui.scale_factor=Escala de interfaz de usuario c.settings.ui.scale_mode=Modo d’escala de interfaz de usuario c.settings.ui.scale_mode.resize=Redimensionado c.settings.ui.touch_controls=Permitir controles de pantalla táctil -c.settings.ui_blur=Activar difuminar +c.settings.graphics.ui_blur=Activar difuminar c.settings.username=Nombre de usuario c.setup.contract_title=CONTRATO DE EMPLEO c.setup.par00=Este es un contrato oficial entre usted (el empleado) y Musterfoods Ltd. (el empleador) para trabajar como chef o camarero. @@ -154,7 +154,7 @@ unknown551=Servidor (No disponible) unknown568=Peinado %d unknown572=Modelos unknown576=Sonidos -unknown59=Configuración inicial completa. (Desmarque y recomenza para reentrar) +c.settings.gameplay.setup_completed=Configuración inicial completa. (Desmarque y recomenza para reentrar) unknown622=Debes completar todos los requisitos. unknown626=Aceptar unknown63=Tutorial comenzó diff --git a/locale/eu.ini b/locale/eu.ini index 97005a4d..534dda8c 100644 --- a/locale/eu.ini +++ b/locale/eu.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard=%s (Teklatua) c.settings.input.mouse_button=Saguaren %s botoia c.settings.input.other_event=Beste gertaerak c.settings.input.press_any_key=Sakatu edozein tekla... -c.settings.debug_info=Erakutsi arazte informazioa (FPS, etab.) +c.settings.graphics.debug_info=Erakutsi arazte informazioa (FPS, etab.) c.settings.graphics.fullscreen=Pantaila osoa c.settings.graphics.fullscreen.always=Beti c.settings.graphics.fullscreen.keep=Mantendu @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=Beti luzatu bultzada iraupen luzeenera c.settings.graphics.gi=Argiztapen orokorra c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI -c.settings.glow=Gaitu distira +c.settings.graphics.glow=Gaitu distira c.settings.graphics=Grafikoak c.settings.graphics.aa=Anti-aliasinga c.settings.graphics.ao=Giro oklusioa c.settings.graphics.taa=Anti-aliasing tenporala -c.settings.grass_amount=3D belar kopurua belar lauza bakoitzeko -c.settings.language=Hizkuntza -c.settings.language.system=Sistemaren berezkoak +c.settings.graphics.grass_amount=3D belar kopurua belar lauza bakoitzeko +c.settings.ui.language=Hizkuntza +c.settings.ui.language.system=Sistemaren berezkoak c.settings.graphics.lq_trees=Low-poly zuhaitzak c.settings.other=Besteak -c.settings.preset_high=Altua -c.settings.preset_low=Baxua -c.settings.preset_medium=Erdikoa -c.settings.server_data=Zerbitzariaren datu direktorioa (hutsik utzi automatikoki bilatzeko) -c.settings.server_path=Zerbitzari exekutagarria (hutsik utzi PATH-en bilatzeko) -c.settings.server_path.placeholder=Sartu bidea -c.settings.shadows=Gaitu itzalak -c.settings.smooth_camera=Kamera biraketa leuna +c.settings.graphics.preset.high=Altua +c.settings.graphics.preset.low=Baxua +c.settings.graphics.preset.medium=Erdikoa +c.settings.other.server_data=Zerbitzariaren datu direktorioa (hutsik utzi automatikoki bilatzeko) +c.settings.other.server_path=Zerbitzari exekutagarria (hutsik utzi PATH-en bilatzeko) +c.settings.other.server_path.placeholder=Sartu bidea +c.settings.graphics.shadows=Gaitu itzalak +c.settings.gameplay.smooth_camera=Kamera biraketa leuna c.settings.ui=Erab. Interfazea c.settings.ui.scale_factor=UI eskalatze faktorea c.settings.ui.scale_mode=UI eskalatze modua c.settings.ui.scale_mode.resize=Neurria aldatu c.settings.ui.touch_controls=Gaitu ukipen-pantaila kontrolak -c.settings.ui_blur=Gaitu UI lausotzea +c.settings.graphics.ui_blur=Gaitu UI lausotzea c.settings.username=Erabiltzaile izena c.setup.contract_title=LAN KONTRATUA c.setup.par00=Zure (langilea) eta Musterfoods Ltd. (enpresa)-ren arteko kontratu loteslea da hau, chef edo zerbitzari gisa lan egin dezazun. @@ -154,7 +154,7 @@ unknown551=eskuraezina unknown568=%d orrazkera unknown572=Modeloak unknown576=Soinuak -unknown59=Hasierako konfigurazioa osatuta. (Marka kendu eta berrabiarazi berriz sartzeko) +c.settings.gameplay.setup_completed=Hasierako konfigurazioa osatuta. (Marka kendu eta berrabiarazi berriz sartzeko) unknown622=Eskatutako eremu guztiak bete behar dituzu. unknown626=Onartu unknown63=Tutoriala hasi da diff --git a/locale/fi.ini b/locale/fi.ini index f89bdb78..271d533e 100644 --- a/locale/fi.ini +++ b/locale/fi.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button= c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info= +c.settings.graphics.debug_info= c.settings.graphics.fullscreen= c.settings.graphics.fullscreen.always= c.settings.graphics.fullscreen.keep= @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost= c.settings.graphics.gi= c.settings.graphics.gi.sdfgi= c.settings.graphics.gi.voxelgi= -c.settings.glow= +c.settings.graphics.glow= c.settings.graphics= c.settings.graphics.aa= c.settings.graphics.ao= c.settings.graphics.taa= -c.settings.grass_amount= -c.settings.language= -c.settings.language.system= +c.settings.graphics.grass_amount= +c.settings.ui.language= +c.settings.ui.language.system= c.settings.graphics.lq_trees= c.settings.other= -c.settings.preset_high= -c.settings.preset_low= -c.settings.preset_medium= -c.settings.server_data= -c.settings.server_path= -c.settings.server_path.placeholder= -c.settings.shadows= -c.settings.smooth_camera= +c.settings.graphics.preset.high= +c.settings.graphics.preset.low= +c.settings.graphics.preset.medium= +c.settings.other.server_data= +c.settings.other.server_path= +c.settings.other.server_path.placeholder= +c.settings.graphics.shadows= +c.settings.gameplay.smooth_camera= c.settings.ui= c.settings.ui.scale_factor= c.settings.ui.scale_mode= c.settings.ui.scale_mode.resize= c.settings.ui.touch_controls= -c.settings.ui_blur= +c.settings.graphics.ui_blur= c.settings.username= c.setup.contract_title= c.setup.par00= @@ -154,7 +154,7 @@ unknown551= unknown568= unknown572= unknown576= -unknown59= +c.settings.gameplay.setup_completed= unknown622= unknown626= unknown63= diff --git a/locale/fr.ini b/locale/fr.ini index 2934fb14..836989aa 100644 --- a/locale/fr.ini +++ b/locale/fr.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=Bouton de menu c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=Montrer les informations de débogage (Fréquence d’images, etc.) +c.settings.graphics.debug_info=Montrer les informations de débogage (Fréquence d’images, etc.) c.settings.graphics.fullscreen=Plein écran c.settings.graphics.fullscreen.always=Toujours c.settings.graphics.fullscreen.keep=Garder @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=Toujours prolonger le boost jusqu’à la duré c.settings.graphics.gi=Luminosité générale c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=IG Voxel -c.settings.glow=Activer la lueur +c.settings.graphics.glow=Activer la lueur c.settings.graphics=Graphismes c.settings.graphics.aa=Anti crénelage c.settings.graphics.ao=Occlusion ambiante c.settings.graphics.taa=Anti crénelage temporel -c.settings.grass_amount=Quantité d’herbe 3D par tuile d’herbe -c.settings.language=Langue -c.settings.language.system=Défaut du système +c.settings.graphics.grass_amount=Quantité d’herbe 3D par tuile d’herbe +c.settings.ui.language=Langue +c.settings.ui.language.system=Défaut du système c.settings.graphics.lq_trees=Arbres de quelques polygones c.settings.other= -c.settings.preset_high=Élevé -c.settings.preset_low=Faible -c.settings.preset_medium=Moyen -c.settings.server_data=Répertoire de données du serveur (laisser vide pour la détection automatique) -c.settings.server_path=Binaire du serveur (laisser vide pour rechercher le chemin) -c.settings.server_path.placeholder=Entrez le chemin -c.settings.shadows=Activer les ombres -c.settings.smooth_camera=Interpoler la rotation de la caméra +c.settings.graphics.preset.high=Élevé +c.settings.graphics.preset.low=Faible +c.settings.graphics.preset.medium=Moyen +c.settings.other.server_data=Répertoire de données du serveur (laisser vide pour la détection automatique) +c.settings.other.server_path=Binaire du serveur (laisser vide pour rechercher le chemin) +c.settings.other.server_path.placeholder=Entrez le chemin +c.settings.graphics.shadows=Activer les ombres +c.settings.gameplay.smooth_camera=Interpoler la rotation de la caméra c.settings.ui=Nom d’utilisateur c.settings.ui.scale_factor=Taille de l’interface utilisateur c.settings.ui.scale_mode=Mode d’échelle de l’interface utilisateur c.settings.ui.scale_mode.resize=Redimensionner c.settings.ui.touch_controls=Activer les commandes de l’écran tactile -c.settings.ui_blur=Activer le flou dans l’interface utilisateus +c.settings.graphics.ui_blur=Activer le flou dans l’interface utilisateus c.settings.username=Nom d’utilisateur c.setup.contract_title=CONTRAT DE TRAVAIL c.setup.par00=Ce contrat légal est rédigé entre vous (l’employé) et Musterfoods Ltd. (l’employeur) pour travailler comme chef ou serveur. @@ -154,7 +154,7 @@ unknown551=Serveur (Indisponible) unknown568=Coiffure %d unknown572=Modèles unknown576=Sons -unknown59=Configuration initiale terminée. (Décochez et recommencer pour entrer à nouveau) +c.settings.gameplay.setup_completed=Configuration initiale terminée. (Décochez et recommencer pour entrer à nouveau) unknown622=Vous devez remplir tous les champs requis. unknown626=Accepter unknown63=Tutoriel commencé diff --git a/locale/he.ini b/locale/he.ini index 0feafee9..e20a6a24 100644 --- a/locale/he.ini +++ b/locale/he.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=כפתור התפריט c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info= +c.settings.graphics.debug_info= c.settings.graphics.fullscreen=מסך מלא c.settings.graphics.fullscreen.always=תמיד c.settings.graphics.fullscreen.keep=שמור @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=תמיד הארך דחיפה לזמן המיר c.settings.graphics.gi=תאורה גלובאלית c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi= -c.settings.glow=אפשר זוהר +c.settings.graphics.glow=אפשר זוהר c.settings.graphics=גרפיקה c.settings.graphics.aa=אנטי אליאסינג c.settings.graphics.ao=ספיגה סביבתית c.settings.graphics.taa= -c.settings.grass_amount=כמות דשא תלת מימדית לכל אריח דשא -c.settings.language=שפה -c.settings.language.system=ברירת מחדל +c.settings.graphics.grass_amount=כמות דשא תלת מימדית לכל אריח דשא +c.settings.ui.language=שפה +c.settings.ui.language.system=ברירת מחדל c.settings.graphics.lq_trees= c.settings.other= -c.settings.preset_high=גבוה -c.settings.preset_low=נמוך -c.settings.preset_medium= -c.settings.server_data=תקיית המידע של השרת (השאר ריק על מנת לזהות אוטומטית) -c.settings.server_path=קובץ הרצה של השרת (השאר ריק על מנת לחפש ב PATH) -c.settings.server_path.placeholder=הכנס נתיב -c.settings.shadows=אפשר צללים -c.settings.smooth_camera= +c.settings.graphics.preset.high=גבוה +c.settings.graphics.preset.low=נמוך +c.settings.graphics.preset.medium= +c.settings.other.server_data=תקיית המידע של השרת (השאר ריק על מנת לזהות אוטומטית) +c.settings.other.server_path=קובץ הרצה של השרת (השאר ריק על מנת לחפש ב PATH) +c.settings.other.server_path.placeholder=הכנס נתיב +c.settings.graphics.shadows=אפשר צללים +c.settings.gameplay.smooth_camera= c.settings.ui=שם משתמש c.settings.ui.scale_factor= c.settings.ui.scale_mode= c.settings.ui.scale_mode.resize=שנה גודל c.settings.ui.touch_controls=אפשר מסך מגע -c.settings.ui_blur= +c.settings.graphics.ui_blur= c.settings.username=שם משתמש c.setup.contract_title=חוזה מעביד c.setup.par00=מסמך זה הינו חוזה המחייב בינך (העובד) ומאסטרפוד בע"מ (המעביד) על מנת לעבוד כשף או מלצר. @@ -154,7 +154,7 @@ unknown551= unknown568=תספורת %d unknown572=מודלים unknown576= -unknown59=אתחול ראשוני נגמר. (הורד סימון והדלק מחדש על מנת להכנס מחדש) +c.settings.gameplay.setup_completed=אתחול ראשוני נגמר. (הורד סימון והדלק מחדש על מנת להכנס מחדש) unknown622=אנא מלאו את כל השדות הנדרשים. unknown626=אשר unknown63=הדרכה התחילה diff --git a/locale/ja.ini b/locale/ja.ini index 03ad283b..a6597d93 100644 --- a/locale/ja.ini +++ b/locale/ja.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=メニューボタン c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=デバッグ情報を表示(フレームレートなど) +c.settings.graphics.debug_info=デバッグ情報を表示(フレームレートなど) c.settings.graphics.fullscreen=全画面 c.settings.graphics.fullscreen.always=いつも c.settings.graphics.fullscreen.keep=保つ @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=ブーストを常に最大限に拡張する c.settings.graphics.gi=グローバルイルミネーション c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI -c.settings.glow=グローを有効に +c.settings.graphics.glow=グローを有効に c.settings.graphics=グラフィックス c.settings.graphics.aa=アンチエイリアシング c.settings.graphics.ao=アンビエントオクルージョン c.settings.graphics.taa=テンポラルアンチエイリアシング -c.settings.grass_amount=芝生タイルあたりの3D芝生 -c.settings.language=言語 -c.settings.language.system=システムのデフォルト +c.settings.graphics.grass_amount=芝生タイルあたりの3D芝生 +c.settings.ui.language=言語 +c.settings.ui.language.system=システムのデフォルト c.settings.graphics.lq_trees=ローポリ木 c.settings.other= -c.settings.preset_high=高 -c.settings.preset_low=悪い -c.settings.preset_medium=正常 -c.settings.server_data=サーバーデータディレクトリ(させて空の -> 自動検出) -c.settings.server_path=サーバーバイナリ(させて空の ->「パス」) -c.settings.server_path.placeholder=パスを入力 -c.settings.shadows=影を有効に -c.settings.smooth_camera=カメラの回転を補間 +c.settings.graphics.preset.high=高 +c.settings.graphics.preset.low=悪い +c.settings.graphics.preset.medium=正常 +c.settings.other.server_data=サーバーデータディレクトリ(させて空の -> 自動検出) +c.settings.other.server_path=サーバーバイナリ(させて空の ->「パス」) +c.settings.other.server_path.placeholder=パスを入力 +c.settings.graphics.shadows=影を有効に +c.settings.gameplay.smooth_camera=カメラの回転を補間 c.settings.ui=ユーザー名 c.settings.ui.scale_factor=UIスケール c.settings.ui.scale_mode=UIスケール c.settings.ui.scale_mode.resize=サイズ変更 c.settings.ui.touch_controls=タッチスクリーンコントロールを有効に -c.settings.ui_blur=グローを有効に +c.settings.graphics.ui_blur=グローを有効に c.settings.username=ユーザー名 c.setup.contract_title=「雇用契約」 c.setup.par00=これは雇用契約。あなた【 従業員】と Musterfoods Ltd.【雇用主】の間のシェフやウェイターとして働く。 @@ -154,7 +154,7 @@ unknown551=利用不可 unknown568=髪型 %d unknown572=モデル unknown576=サウンド -unknown59=初期設定完了。(チェックを外して再起動して) +c.settings.gameplay.setup_completed=初期設定完了。(チェックを外して再起動して) unknown622=要求されたフィールドをすべて入力する必要があります。 unknown626=アクセプト unknown63=チュートリアルを開始 diff --git a/locale/pl.ini b/locale/pl.ini index 036c595b..7c12a3d7 100644 --- a/locale/pl.ini +++ b/locale/pl.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=przycisk menu c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=Wyświetlaj informacje debugowania (częstość klatek itp.) +c.settings.graphics.debug_info=Wyświetlaj informacje debugowania (częstość klatek itp.) c.settings.graphics.fullscreen=Pełny ekran c.settings.graphics.fullscreen.always=Zawsze c.settings.graphics.fullscreen.keep=Zachowaj @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=Zawsze wydłużaj przyspieszenie do maksymalneg c.settings.graphics.gi=Globalne oświetlenie c.settings.graphics.gi.sdfgi=SDF c.settings.graphics.gi.voxelgi=Oświetlenie wokselowe -c.settings.glow=Połysk +c.settings.graphics.glow=Połysk c.settings.graphics=Ustawienia grafiki c.settings.graphics.aa=Antyaliasing c.settings.graphics.ao=Okluzja otoczenia c.settings.graphics.taa=Antyaliasing temporalny -c.settings.grass_amount=Gęstość trawy 3D -c.settings.language=Język -c.settings.language.system=Domyślny systemowy +c.settings.graphics.grass_amount=Gęstość trawy 3D +c.settings.ui.language=Język +c.settings.ui.language.system=Domyślny systemowy c.settings.graphics.lq_trees=Drzewa low-poly c.settings.other= -c.settings.preset_high=Wysokie -c.settings.preset_low=Niskie -c.settings.preset_medium=Średnie -c.settings.server_data=Folder danych serwera (pozostaw puste aby wykryć automatycznie) -c.settings.server_path=Plik wykonywalny serwera (pozostaw puste aby przeszukać ścieżkę PATH) -c.settings.server_path.placeholder=Podaj ścieżkę -c.settings.shadows=Cienie -c.settings.smooth_camera=Gładki obrót kamery +c.settings.graphics.preset.high=Wysokie +c.settings.graphics.preset.low=Niskie +c.settings.graphics.preset.medium=Średnie +c.settings.other.server_data=Folder danych serwera (pozostaw puste aby wykryć automatycznie) +c.settings.other.server_path=Plik wykonywalny serwera (pozostaw puste aby przeszukać ścieżkę PATH) +c.settings.other.server_path.placeholder=Podaj ścieżkę +c.settings.graphics.shadows=Cienie +c.settings.gameplay.smooth_camera=Gładki obrót kamery c.settings.ui=Nazwa użytkownika c.settings.ui.scale_factor=Stopień skalowania interfejsu c.settings.ui.scale_mode=Skalowanie interfejsu c.settings.ui.scale_mode.resize=Dopasuj c.settings.ui.touch_controls=Sterowanie dotykowe -c.settings.ui_blur=Rozmycie interfejsu +c.settings.graphics.ui_blur=Rozmycie interfejsu c.settings.username=Nazwa użytkownika c.setup.contract_title=UMOWA ZATRUDNIENIA c.setup.par00=Niniejszy dokument stanowi umowę między Panem/Panią (zatrudnionym) a Musterfoods sp. z o. o. (pracodawcą) na stanowisku kucharz/kelner. @@ -154,7 +154,7 @@ unknown551=niedostępne unknown568=Fryzura %d unknown572=Modele unknown576=Oprawa dźwiękowa -unknown59=Konfiguracja wstępna ukończona. (Odznacz i zrestartuj aby wykonać ponownie) +c.settings.gameplay.setup_completed=Konfiguracja wstępna ukończona. (Odznacz i zrestartuj aby wykonać ponownie) unknown622=Musisz wypełnić wymagane pola. unknown626=Zatwierdź unknown63=Tutorial rozpoczęty diff --git a/locale/pt.ini b/locale/pt.ini index f89bdb78..271d533e 100644 --- a/locale/pt.ini +++ b/locale/pt.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button= c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info= +c.settings.graphics.debug_info= c.settings.graphics.fullscreen= c.settings.graphics.fullscreen.always= c.settings.graphics.fullscreen.keep= @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost= c.settings.graphics.gi= c.settings.graphics.gi.sdfgi= c.settings.graphics.gi.voxelgi= -c.settings.glow= +c.settings.graphics.glow= c.settings.graphics= c.settings.graphics.aa= c.settings.graphics.ao= c.settings.graphics.taa= -c.settings.grass_amount= -c.settings.language= -c.settings.language.system= +c.settings.graphics.grass_amount= +c.settings.ui.language= +c.settings.ui.language.system= c.settings.graphics.lq_trees= c.settings.other= -c.settings.preset_high= -c.settings.preset_low= -c.settings.preset_medium= -c.settings.server_data= -c.settings.server_path= -c.settings.server_path.placeholder= -c.settings.shadows= -c.settings.smooth_camera= +c.settings.graphics.preset.high= +c.settings.graphics.preset.low= +c.settings.graphics.preset.medium= +c.settings.other.server_data= +c.settings.other.server_path= +c.settings.other.server_path.placeholder= +c.settings.graphics.shadows= +c.settings.gameplay.smooth_camera= c.settings.ui= c.settings.ui.scale_factor= c.settings.ui.scale_mode= c.settings.ui.scale_mode.resize= c.settings.ui.touch_controls= -c.settings.ui_blur= +c.settings.graphics.ui_blur= c.settings.username= c.setup.contract_title= c.setup.par00= @@ -154,7 +154,7 @@ unknown551= unknown568= unknown572= unknown576= -unknown59= +c.settings.gameplay.setup_completed= unknown622= unknown626= unknown63= diff --git a/locale/tr.ini b/locale/tr.ini index f89bdb78..271d533e 100644 --- a/locale/tr.ini +++ b/locale/tr.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button= c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info= +c.settings.graphics.debug_info= c.settings.graphics.fullscreen= c.settings.graphics.fullscreen.always= c.settings.graphics.fullscreen.keep= @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost= c.settings.graphics.gi= c.settings.graphics.gi.sdfgi= c.settings.graphics.gi.voxelgi= -c.settings.glow= +c.settings.graphics.glow= c.settings.graphics= c.settings.graphics.aa= c.settings.graphics.ao= c.settings.graphics.taa= -c.settings.grass_amount= -c.settings.language= -c.settings.language.system= +c.settings.graphics.grass_amount= +c.settings.ui.language= +c.settings.ui.language.system= c.settings.graphics.lq_trees= c.settings.other= -c.settings.preset_high= -c.settings.preset_low= -c.settings.preset_medium= -c.settings.server_data= -c.settings.server_path= -c.settings.server_path.placeholder= -c.settings.shadows= -c.settings.smooth_camera= +c.settings.graphics.preset.high= +c.settings.graphics.preset.low= +c.settings.graphics.preset.medium= +c.settings.other.server_data= +c.settings.other.server_path= +c.settings.other.server_path.placeholder= +c.settings.graphics.shadows= +c.settings.gameplay.smooth_camera= c.settings.ui= c.settings.ui.scale_factor= c.settings.ui.scale_mode= c.settings.ui.scale_mode.resize= c.settings.ui.touch_controls= -c.settings.ui_blur= +c.settings.graphics.ui_blur= c.settings.username= c.setup.contract_title= c.setup.par00= @@ -154,7 +154,7 @@ unknown551= unknown568= unknown572= unknown576= -unknown59= +c.settings.gameplay.setup_completed= unknown622= unknown626= unknown63= diff --git a/locale/zh_Hans.ini b/locale/zh_Hans.ini index 8ff41d7d..e5003956 100644 --- a/locale/zh_Hans.ini +++ b/locale/zh_Hans.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard=%s(键盘) c.settings.input.mouse_button=鼠标按钮 %s c.settings.input.other_event=其他活动 c.settings.input.press_any_key=按任意键… -c.settings.debug_info=显示调试信息(帧率等) +c.settings.graphics.debug_info=显示调试信息(帧率等) c.settings.graphics.fullscreen=全屏 c.settings.graphics.fullscreen.always=始终 c.settings.graphics.fullscreen.keep=保持 @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=始终将加速延长至最大持续时间 c.settings.graphics.gi=全局照明 c.settings.graphics.gi.sdfgi=有符号距离场全局照明 c.settings.graphics.gi.voxelgi=体素全局照明 -c.settings.glow=启用辉光 +c.settings.graphics.glow=启用辉光 c.settings.graphics=图形 c.settings.graphics.aa=抗锯齿 c.settings.graphics.ao=环境光遮蔽 c.settings.graphics.taa=随机采样抗锯齿 -c.settings.grass_amount=每块草砖的 3D 草量 -c.settings.language=语言 -c.settings.language.system=系统默认 +c.settings.graphics.grass_amount=每块草砖的 3D 草量 +c.settings.ui.language=语言 +c.settings.ui.language.system=系统默认 c.settings.graphics.lq_trees=低多边形树 c.settings.other=其他 -c.settings.preset_high=高 -c.settings.preset_low=低 -c.settings.preset_medium=中 -c.settings.server_data=服务器数据目录(留空以自动检测) -c.settings.server_path=服务器二进制文件(留空以搜索路径) -c.settings.server_path.placeholder=输入路径 -c.settings.shadows=启用阴影 -c.settings.smooth_camera=平滑的摄像头旋转 +c.settings.graphics.preset.high=高 +c.settings.graphics.preset.low=低 +c.settings.graphics.preset.medium=中 +c.settings.other.server_data=服务器数据目录(留空以自动检测) +c.settings.other.server_path=服务器二进制文件(留空以搜索路径) +c.settings.other.server_path.placeholder=输入路径 +c.settings.graphics.shadows=启用阴影 +c.settings.gameplay.smooth_camera=平滑的摄像头旋转 c.settings.ui=用户界面 c.settings.ui.scale_factor=用户界面比例系数 c.settings.ui.scale_mode=用户界面缩放模式 c.settings.ui.scale_mode.resize=调整大小 c.settings.ui.touch_controls=启用触摸屏控制 -c.settings.ui_blur=启用用户界面模糊 +c.settings.graphics.ui_blur=启用用户界面模糊 c.settings.username=用户名 c.setup.contract_title=雇佣合同 c.setup.par00=这是您(雇员)和 Musterfoods Ltd. (雇主)之间有约束力的厨师或服务员合同。 @@ -154,7 +154,7 @@ unknown551=不可用 unknown568=发型 %d unknown572=模型 unknown576=声音 -unknown59=初始设置完成。(取消选中并重启以重新进入) +c.settings.gameplay.setup_completed=初始设置完成。(取消选中并重启以重新进入) unknown622=您必须填写所有要求的字段。 unknown626=接受 unknown63=教程已开始 diff --git a/locale/zh_Hant.ini b/locale/zh_Hant.ini index 1d6a498b..61aaa15a 100644 --- a/locale/zh_Hant.ini +++ b/locale/zh_Hant.ini @@ -80,7 +80,7 @@ c.settings.input.keyboard= c.settings.input.mouse_button=選單按鈕 c.settings.input.other_event= c.settings.input.press_any_key= -c.settings.debug_info=顯示偵錯資訊(幀率等) +c.settings.graphics.debug_info=顯示偵錯資訊(幀率等) c.settings.graphics.fullscreen=全螢幕 c.settings.graphics.fullscreen.always=總是 c.settings.graphics.fullscreen.keep=保留 @@ -90,30 +90,30 @@ c.settings.gameplay.extend_boost=總是將加速延長至最長持續時間 c.settings.graphics.gi=全域照明 c.settings.graphics.gi.sdfgi=有符號距離場全域照明(SDFGI) c.settings.graphics.gi.voxelgi=Voxel 全域照明 -c.settings.glow=啟用發光 +c.settings.graphics.glow=啟用發光 c.settings.graphics=圖形 c.settings.graphics.aa=抗鋸齒 c.settings.graphics.ao=環境遮擋 c.settings.graphics.taa=時間抗鋸齒 -c.settings.grass_amount=每個草塊的 3D 草量 -c.settings.language=語言 -c.settings.language.system=系統預設 +c.settings.graphics.grass_amount=每個草塊的 3D 草量 +c.settings.ui.language=語言 +c.settings.ui.language.system=系統預設 c.settings.graphics.lq_trees=低多邊形樹 c.settings.other= -c.settings.preset_high=高 -c.settings.preset_low=低 -c.settings.preset_medium=中 -c.settings.server_data=伺服器資料目錄(留空以自動偵測) -c.settings.server_path=伺服器二進制檔案(留空以搜尋 PATH) -c.settings.server_path.placeholder=輸入路徑 -c.settings.shadows=啟用陰影 -c.settings.smooth_camera=平滑的相機旋轉 +c.settings.graphics.preset.high=高 +c.settings.graphics.preset.low=低 +c.settings.graphics.preset.medium=中 +c.settings.other.server_data=伺服器資料目錄(留空以自動偵測) +c.settings.other.server_path=伺服器二進制檔案(留空以搜尋 PATH) +c.settings.other.server_path.placeholder=輸入路徑 +c.settings.graphics.shadows=啟用陰影 +c.settings.gameplay.smooth_camera=平滑的相機旋轉 c.settings.ui=使用者名稱 c.settings.ui.scale_factor=介面比例系數 c.settings.ui.scale_mode=介面縮放模式 c.settings.ui.scale_mode.resize=調整大小 c.settings.ui.touch_controls=啟用觸控螢幕控制 -c.settings.ui_blur=啟用介面模糊 +c.settings.graphics.ui_blur=啟用介面模糊 c.settings.username=使用者名稱 c.setup.contract_title=僱傭合約 c.setup.par00=這是你(僱員)和 Musterfoods Ltd.(僱主)之間關於擔任廚師或服務生的具有約束力的合約。 @@ -154,7 +154,7 @@ unknown551=不可用 unknown568=髮型 %d unknown572=模型 unknown576=聲音 -unknown59=初始設定完成。(取消勾選並重新啟動以重新進入) +c.settings.gameplay.setup_completed=初始設定完成。(取消勾選並重新啟動以重新進入) unknown622=你必須填寫所有要求的欄位。 unknown626=接受 unknown63=教程已啟動 -- cgit v1.2.3-70-g09d2 From ad0630639977a7d14700cc2958b9aad52889a298 Mon Sep 17 00:00:00 2001 From: tpart Date: Sat, 7 Sep 2024 00:43:44 +0200 Subject: Fix settings application in light and environment --- client/map/auto_setup/environment_setup.gd | 16 ++++++---------- client/map/auto_setup/light_setup.gd | 9 ++++----- client/menu/setup.tscn | 2 +- client/settings.gd | 6 +++++- 4 files changed, 16 insertions(+), 17 deletions(-) (limited to 'client/menu') diff --git a/client/map/auto_setup/environment_setup.gd b/client/map/auto_setup/environment_setup.gd index 49f93ccb..73c3ee32 100644 --- a/client/map/auto_setup/environment_setup.gd +++ b/client/map/auto_setup/environment_setup.gd @@ -22,13 +22,9 @@ func set_sky(sky_name: String): environment.sky.sky_material = load("res://map/environment/presets/%s_sky.tres" % sky_name) func _ready(): - pass - #Global.settings_changed.connect(apply_settings) - -# TODO -#func apply_settings(): - #environment.ssao_enabled = Global.get_setting("graphics.ssao") - #environment.sdfgi_enabled = Global.get_setting("graphics.gi") == "sdfgi" and allow_sdfgi - #environment.glow_enabled = Global.get_setting("graphics.glow") - #if !Global.on_vulkan(): - #environment.environment.tonemap_exposure = 0.5 + Settings.hook_changed_init("graphics.ssao", func (x): environment.ssao_enabled = x) + Settings.hook_changed_init("graphics.gi", func (x): environment.sdfgi_enabled = x == "sdfgi" and allow_sdfgi) + Settings.hook_changed_init("graphics.glow", func (x): environment.glow_enabled = x) + + if !Global.on_vulkan(): + environment.environment.tonemap_exposure = 0.5 diff --git a/client/map/auto_setup/light_setup.gd b/client/map/auto_setup/light_setup.gd index b42b3662..4da2886e 100644 --- a/client/map/auto_setup/light_setup.gd +++ b/client/map/auto_setup/light_setup.gd @@ -19,13 +19,12 @@ class_name LightSetup @export var completely_disable_light_if_shadows_disabled := false func _ready(): - apply_settings() - Global.settings_changed.connect(apply_settings) + Settings.hook_changed_init("graphics.shadows", apply_settings) -func apply_settings(): +func apply_settings(setting: bool): if completely_disable_light_if_shadows_disabled: - visible = Global.get_setting("graphics.shadows") - shadow_enabled = Global.get_setting("graphics.shadows") + visible = setting + shadow_enabled = setting func set_sky(sky_name: String): match sky_name: diff --git a/client/menu/setup.tscn b/client/menu/setup.tscn index 9d8e4975..53c4565e 100644 --- a/client/menu/setup.tscn +++ b/client/menu/setup.tscn @@ -209,8 +209,8 @@ layout_mode = 2 [node name="LineEdit" type="LineEdit" parent="ScrollContainer/Control/TextureRect/PaperMargin/Contents/PositionEntry"] custom_minimum_size = Vector2(300, 30) layout_mode = 2 -theme_override_colors/font_color = Color(0.458824, 0, 0, 1) theme_override_colors/font_uneditable_color = Color(0.458824, 0, 0, 1) +theme_override_colors/font_color = Color(0.458824, 0, 0, 1) editable = false [node name="LineEdit2" type="Label" parent="ScrollContainer/Control/TextureRect/PaperMargin/Contents/PositionEntry/LineEdit"] diff --git a/client/settings.gd b/client/settings.gd index 1c03ca5a..662fb280 100644 --- a/client/settings.gd +++ b/client/settings.gd @@ -93,9 +93,13 @@ static func get_root(): ]) ]) -static func hook_changed(key: String, callable): +static func hook_changed(key: String, callable: Callable): change_hooks[key] = callable +static func hook_changed_init(key: String, callable: Callable): + hook_changed(key, callable) + callable.call(Global.get_setting(key)) + static var change_hooks = { "graphics.aa": h_aa, "graphics.taa": h_taa, -- cgit v1.2.3-70-g09d2 From 239619be774855b372eea82213b4d8da2d906f52 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 03:31:25 +0200 Subject: hook changed for rows --- client/global.gd | 2 +- client/menu/settings.gd | 6 +++--- client/menu/settings/dropdown_setting.gd | 16 ++++++---------- client/menu/settings/game_setting.gd | 12 ++++-------- client/menu/settings/preset_row.gd | 2 +- client/menu/settings/range_setting.gd | 8 ++------ client/menu/settings/settings_category.gd | 13 +++++-------- client/menu/settings/settings_root.gd | 8 ++++---- client/menu/settings/text_setting.gd | 11 ++++------- client/menu/settings/toggle_setting.gd | 13 +++++-------- 10 files changed, 35 insertions(+), 56 deletions(-) (limited to 'client/menu') diff --git a/client/global.gd b/client/global.gd index e5ae0ed6..e85bf697 100644 --- a/client/global.gd +++ b/client/global.gd @@ -153,7 +153,7 @@ func set_setting(key: String, value): push_error("Tried to set setting \"%s\", which does not yet exist (missing key)" % key) return else: set_setting_unchecked(key, value) - + func get_profile(key: String): if profile.has(key): return profile[key] diff --git a/client/menu/settings.gd b/client/menu/settings.gd index b47331c6..f035f712 100644 --- a/client/menu/settings.gd +++ b/client/menu/settings.gd @@ -20,9 +20,9 @@ extends Menu func _ready(): super() - Global.settings_tree._update_row() - container.add_child(Global.settings_tree.row) - container.move_child(Global.settings_tree.row, 1) + var row = Global.settings_tree.create_row() + container.add_child(row) + container.move_child(row, 1) func _on_back_pressed(): exit() diff --git a/client/menu/settings/dropdown_setting.gd b/client/menu/settings/dropdown_setting.gd index 62162320..8dffce5a 100644 --- a/client/menu/settings/dropdown_setting.gd +++ b/client/menu/settings/dropdown_setting.gd @@ -22,14 +22,10 @@ func _init(new_id: String, new_default, new_options: Array): super(new_id, new_default) options = new_options -func _update_row(): - super() +func create_row(): + var row = super() row.value_node = OptionButton.new() - for i in options: - row.value_node.add_item(tr(nskey + "." + i)) - row.value_node.select(options.find(Global.get_setting(key))) - if not row.value_node.item_selected.is_connected(from_ui): - row.value_node.item_selected.connect(from_ui) - -func from_ui(index): - Global.set_setting(key, options[index]) + for i in options: row.value_node.add_item(tr(nskey + "." + i)) + Settings.hook_changed_init(func (value): row.value_node.select(options.find(Global.get_setting(value)))) + row.value_node.item_selected.connect(func(item): Global.set_setting(key, options[item])) + return row diff --git a/client/menu/settings/game_setting.gd b/client/menu/settings/game_setting.gd index 2846cbe3..a98d5abb 100644 --- a/client/menu/settings/game_setting.gd +++ b/client/menu/settings/game_setting.gd @@ -20,8 +20,6 @@ var default var key: String var nskey: String -var row: Node - func _init(new_id: String, new_default = null): default = new_default key = new_id @@ -30,13 +28,11 @@ func set_parent(parent: GameSetting): if parent != null: key = parent.key + "." + key nskey = "c.settings." + key -func _update_row(): - if row == null: row = preload("res://menu/settings/settings_row.tscn").instantiate() +func create_row(): + var row = preload("res://menu/settings/settings_row.tscn").instantiate() row.description = tr(nskey) - if not row.reset.is_connected(reset): row.reset.connect(reset) - -func reset(): - Global.set_setting(key, default) + row.reset.connect(func(): Global.set_setting(key, default)) + return row func check(): if default != null: diff --git a/client/menu/settings/preset_row.gd b/client/menu/settings/preset_row.gd index 7eca0c3c..ab49f0d8 100644 --- a/client/menu/settings/preset_row.gd +++ b/client/menu/settings/preset_row.gd @@ -34,7 +34,7 @@ func apply(preset_name: String): for i in preset.keys(): Global.set_setting(prefix + "." + i, preset[i]) -func _update_row(): +func create_row(): super() if row.value_node == null: row.value_node = HBoxContainer.new() diff --git a/client/menu/settings/range_setting.gd b/client/menu/settings/range_setting.gd index 49db7c21..adc8a28c 100644 --- a/client/menu/settings/range_setting.gd +++ b/client/menu/settings/range_setting.gd @@ -36,9 +36,5 @@ func _update_row(): row.value_node.max_value = max_value row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1)) - row.value_node.value = Global.get_setting(key) - if not row.value_node.value_changed.is_connected(from_ui): - row.value_node.value_changed.connect(from_ui) - -func from_ui(value): - Global.set_setting(key, value) + Settings.hook_change_init(func(value): row.value_node.value = value) + row.value_node.value_changed.connect(func(value): Global.set_setting(key, value)) diff --git a/client/menu/settings/settings_category.gd b/client/menu/settings/settings_category.gd index a80c12c9..4f5fbbc4 100644 --- a/client/menu/settings/settings_category.gd +++ b/client/menu/settings/settings_category.gd @@ -30,20 +30,17 @@ func set_parent(parent: GameSetting): c.set_parent(self) func _update_row(): - if row == null: row = ScrollContainerCustom.new() - if options == null: options = VBoxContainer.new() + var row = ScrollContainerCustom.new() + var options = VBoxContainer.new() row.name = tr(nskey) row.size_flags_horizontal = Control.SIZE_EXPAND_FILL options.size_flags_horizontal = Control.SIZE_EXPAND_FILL - - if options.get_parent() != row: - row.add_child(options) + row.add_child(options) for r in settings: r._update_row() - print(r.row) - if r.row.get_parent() != options: - options.add_child(r.row) + options.add_child(r.row) + return row func check(): for c in settings: diff --git a/client/menu/settings/settings_root.gd b/client/menu/settings/settings_root.gd index 5acf7f11..d7dad1f7 100644 --- a/client/menu/settings/settings_root.gd +++ b/client/menu/settings/settings_root.gd @@ -23,13 +23,13 @@ func _init(new_children: Array): for c in children: c.set_parent(null) -func _update_row(): - if row == null: row = TabContainer.new() +func create_row(): + var row = TabContainer.new() row.size_flags_vertical = Control.SIZE_EXPAND_FILL for r in children: r._update_row() - if r.row.get_parent() != row: - row.add_child(r.row) + row.add_child(r.row) + return row func check(): for c in children: diff --git a/client/menu/settings/text_setting.gd b/client/menu/settings/text_setting.gd index 6fa6b1ef..4cdf746f 100644 --- a/client/menu/settings/text_setting.gd +++ b/client/menu/settings/text_setting.gd @@ -24,12 +24,9 @@ func _init(new_id: String, new_default: String, new_placeholder: String = ""): placeholder = new_placeholder func _update_row(): - super() + var row = super() row.value_node = LineEdit.new() - row.value_node.text = Global.get_setting(key) row.value_node.placeholder_text = placeholder - if not row.value_node.text_changed.is_connected(from_ui): - row.value_node.text_changed.connect(from_ui) - -func from_ui(text): - Global.set_setting(key, text) + row.value_node.text_changed.connect(func(text): Global.set_setting(key, text)) + Settings.hook_changed_init(key, func(text): row.value_node.text = text) + return row diff --git a/client/menu/settings/toggle_setting.gd b/client/menu/settings/toggle_setting.gd index 45f08d9f..c8c40469 100644 --- a/client/menu/settings/toggle_setting.gd +++ b/client/menu/settings/toggle_setting.gd @@ -20,12 +20,9 @@ extends GameSetting func _init(new_id: String, new_default: bool): super(new_id, new_default) -func _update_row(): - super() +func create_row(): + var row = super() row.value_node = CheckButton.new() - row.value_node.button_pressed = Global.get_setting(key) - if not row.value_node.pressed.is_connected(from_ui): - row.value_node.pressed.connect(from_ui) - -func from_ui(): - Global.set_setting(key, row.value_node.button_pressed) + row.value_node.pressed.connect(func(): Global.set_setting(key, row.value_node.button_pressed)) + Settings.hook_changed_init(key, func(value): row.value_node.button_pressed = value) + return row -- cgit v1.2.3-70-g09d2 From a97f429c6a0ead9eb084efbd276bd999bf9c9a7f Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 03:39:06 +0200 Subject: _update_row -> create_row --- client/menu/settings/dropdown_setting.gd | 2 +- client/menu/settings/input/input_setting.gd | 13 +++++-------- client/menu/settings/preset_row.gd | 16 ++++++++-------- client/menu/settings/range_setting.gd | 7 ++++--- client/menu/settings/settings_category.gd | 6 ++---- client/menu/settings/settings_root.gd | 4 +--- client/menu/settings/text_setting.gd | 2 +- 7 files changed, 22 insertions(+), 28 deletions(-) (limited to 'client/menu') diff --git a/client/menu/settings/dropdown_setting.gd b/client/menu/settings/dropdown_setting.gd index 8dffce5a..4a3ce8c6 100644 --- a/client/menu/settings/dropdown_setting.gd +++ b/client/menu/settings/dropdown_setting.gd @@ -26,6 +26,6 @@ func create_row(): var row = super() row.value_node = OptionButton.new() for i in options: row.value_node.add_item(tr(nskey + "." + i)) - Settings.hook_changed_init(func (value): row.value_node.select(options.find(Global.get_setting(value)))) + Settings.hook_changed_init(key, func (value): row.value_node.select(options.find(value))) row.value_node.item_selected.connect(func(item): Global.set_setting(key, options[item])) return row diff --git a/client/menu/settings/input/input_setting.gd b/client/menu/settings/input/input_setting.gd index e32e800c..7a017ed2 100644 --- a/client/menu/settings/input/input_setting.gd +++ b/client/menu/settings/input/input_setting.gd @@ -19,12 +19,9 @@ extends GameSetting const INPUT_VALUE_NODE_SCENE = preload("res://menu/settings/input/input_value_node.tscn") -func _update_row(): - super() +func create_row(): + var row = super() row.value_node = INPUT_VALUE_NODE_SCENE.instantiate() - row.value_node.value = Global.get_setting(key) - if not row.value_node.changed.is_connected(from_ui): - row.value_node.changed.connect(from_ui) - -func from_ui(): - Global.set_setting(key, row.value_node.value) + Settings.hook_changed_init(key, func(value): row.value_node.value = value) + row.value_node.changed.connect(func(): Global.set_setting(key, row.value_node.value)) + return row diff --git a/client/menu/settings/preset_row.gd b/client/menu/settings/preset_row.gd index ab49f0d8..af6cfe0e 100644 --- a/client/menu/settings/preset_row.gd +++ b/client/menu/settings/preset_row.gd @@ -35,11 +35,11 @@ func apply(preset_name: String): Global.set_setting(prefix + "." + i, preset[i]) func create_row(): - super() - if row.value_node == null: - row.value_node = HBoxContainer.new() - for i in options.keys(): - var button := Button.new() - button.pressed.connect(apply.bind(i)) - button.text = tr(nskey + "." + i) - row.value_node.add_child(button) + var row = super() + row.value_node = HBoxContainer.new() + for i in options.keys(): + var button := Button.new() + button.pressed.connect(apply.bind(i)) + button.text = tr(nskey + "." + i) + row.value_node.add_child(button) + return row diff --git a/client/menu/settings/range_setting.gd b/client/menu/settings/range_setting.gd index adc8a28c..f1261b81 100644 --- a/client/menu/settings/range_setting.gd +++ b/client/menu/settings/range_setting.gd @@ -29,12 +29,13 @@ func _init(new_id: String, new_default: float, new_min_value: float, new_max_val tick_count = new_tick_count smooth = new_smooth -func _update_row(): - super() +func create_row(): + var row = super() row.value_node = HSlider.new() row.value_node.min_value = min_value row.value_node.max_value = max_value row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1)) - Settings.hook_change_init(func(value): row.value_node.value = value) + Settings.hook_changed_init(key, func(value): row.value_node.value = value) row.value_node.value_changed.connect(func(value): Global.set_setting(key, value)) + return row diff --git a/client/menu/settings/settings_category.gd b/client/menu/settings/settings_category.gd index 4f5fbbc4..b5d02d8f 100644 --- a/client/menu/settings/settings_category.gd +++ b/client/menu/settings/settings_category.gd @@ -29,7 +29,7 @@ func set_parent(parent: GameSetting): for c in settings: c.set_parent(self) -func _update_row(): +func create_row(): var row = ScrollContainerCustom.new() var options = VBoxContainer.new() row.name = tr(nskey) @@ -37,9 +37,7 @@ func _update_row(): options.size_flags_horizontal = Control.SIZE_EXPAND_FILL row.add_child(options) - for r in settings: - r._update_row() - options.add_child(r.row) + for r in settings: options.add_child(r.create_row()) return row func check(): diff --git a/client/menu/settings/settings_root.gd b/client/menu/settings/settings_root.gd index d7dad1f7..1beb0d9b 100644 --- a/client/menu/settings/settings_root.gd +++ b/client/menu/settings/settings_root.gd @@ -26,9 +26,7 @@ func _init(new_children: Array): func create_row(): var row = TabContainer.new() row.size_flags_vertical = Control.SIZE_EXPAND_FILL - for r in children: - r._update_row() - row.add_child(r.row) + for r in children: row.add_child(r.create_row()) return row func check(): diff --git a/client/menu/settings/text_setting.gd b/client/menu/settings/text_setting.gd index 4cdf746f..8bf2fa9f 100644 --- a/client/menu/settings/text_setting.gd +++ b/client/menu/settings/text_setting.gd @@ -23,7 +23,7 @@ func _init(new_id: String, new_default: String, new_placeholder: String = ""): super(new_id, new_default) placeholder = new_placeholder -func _update_row(): +func create_row(): var row = super() row.value_node = LineEdit.new() row.value_node.placeholder_text = placeholder -- cgit v1.2.3-70-g09d2 From 66eb933df271eaca4df6201c55bb678275abf9df Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 11:38:13 +0200 Subject: fix remaining settings --- client/global.gd | 4 ++-- client/menu/blur_setup.gd | 4 ++-- client/settings.gd | 5 ++--- locale/en.ini | 51 ++++++++++++++++++++++++++++------------------- 4 files changed, 36 insertions(+), 28 deletions(-) (limited to 'client/menu') diff --git a/client/global.gd b/client/global.gd index 6d41dc31..47d9da06 100644 --- a/client/global.gd +++ b/client/global.gd @@ -83,7 +83,7 @@ func _input(event): using_joypad_change.emit(using_joypad) # Update using_touch variable - if get_setting("ui.touch_controls") == 0: # Only if set to automatic + if get_setting("ui.touch_controls") == "automatic": # Only if set to automatic if event is InputEventScreenTouch or event is InputEventScreenDrag: if not using_touch: using_touch = true @@ -143,7 +143,7 @@ func get_setting(key: String): func set_setting_unchecked(key: String, value): value = value.duplicate(true) if value is Array else value - if key in settings and settings[key] == value: return + if key in settings and typeof(settings[key]) == typeof(value) and settings[key] == value: return settings[key] = value if Settings.change_hooks_display.get(key) != null: Settings.change_hooks_display.get(key).call(value) if Settings.change_hooks_apply.get(key) != null: Settings.change_hooks_apply.get(key).call(value) diff --git a/client/menu/blur_setup.gd b/client/menu/blur_setup.gd index b5b5dde9..b5f80540 100644 --- a/client/menu/blur_setup.gd +++ b/client/menu/blur_setup.gd @@ -16,8 +16,8 @@ extends Control func _ready(): - update(Global.get_setting("ui.blur")) - Settings.hook_changed("ui.blur", update) + update(Global.get_setting("graphics.ui_blur")) + Settings.hook_changed("graphics.ui_blur", update) func update(state): material.set_shader_parameter("enable_blur", state) diff --git a/client/settings.gd b/client/settings.gd index ade51262..bfa25a00 100644 --- a/client/settings.gd +++ b/client/settings.gd @@ -52,7 +52,7 @@ static func get_root(): RangeSetting.new("sfx_volume", 0, -30, 0), ]), SettingsCategory.new("ui", [ - DropdownSetting.new("touch_controls", 0, ["automatic", "enabled", "disabled"]), + DropdownSetting.new("touch_controls", "automatic", ["automatic", "enabled", "disabled"]), DropdownSetting.new("language", "system", Global.language_list()), DropdownSetting.new("scale_mode", "resize", ["resize", "disabled"]), RangeSetting.new("scale_factor", 1. if not Global.on_mobile() else 1.5, 0.5, 1.5, 3), @@ -110,7 +110,7 @@ static func h_taa(enabled): static func h_scale_mode(mode: String): match mode: - "scale": Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_CANVAS_ITEMS + "resize": Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_CANVAS_ITEMS "disabled": Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_DISABLED static func h_scale_factor(value: float): @@ -127,7 +127,6 @@ static func h_touch(mode: String): Global.using_touch_change.emit() static func h_language(language: String): - print("STELANG ", language) if language == "system": language = OS.get_locale_language() TranslationServer.set_locale(language) diff --git a/locale/en.ini b/locale/en.ini index 3f094e84..441f2f8e 100644 --- a/locale/en.ini +++ b/locale/en.ini @@ -65,6 +65,10 @@ c.settings.gameplay.setup_completed=Initial setup complete. (Uncheck and restart c.settings.gameplay.tutorial_started=Tutorial started c.settings.gameplay.usernames=Show username tags c.settings.gameplay=Gameplay +c.settings.graphics.aa.disabled=Disabled +c.settings.graphics.aa.fx=FXAA +c.settings.graphics.aa.ms2x=MSAA 2x +c.settings.graphics.aa.ms4x=MSAA 4x c.settings.graphics.aa=Anti-aliasing c.settings.graphics.ao=Ambient occlusion c.settings.graphics.debug_info=Display debug info (Framerate, etc.) @@ -72,10 +76,10 @@ c.settings.graphics.fullscreen.always=Always c.settings.graphics.fullscreen.keep=Keep c.settings.graphics.fullscreen.never=Never c.settings.graphics.fullscreen=Fullscreen +c.settings.graphics.gi.disabled=Disabled c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI c.settings.graphics.gi=Global illumination -c.settings.graphics.ssao=Screen-space ambient occlusion (SSAO) c.settings.graphics.glow=Enable glow c.settings.graphics.grass_amount=3D grass amount per grass tile c.settings.graphics.lq_trees=Low-poly trees @@ -84,51 +88,56 @@ c.settings.graphics.preset.low=Low c.settings.graphics.preset.medium=Medium c.settings.graphics.preset=Load preset c.settings.graphics.shadows=Enable shadows +c.settings.graphics.ssao=Screen-space ambient occlusion (SSAO) c.settings.graphics.taa=Temporal Anti-Aliasing c.settings.graphics.ui_blur=Enable UI blur c.settings.graphics=Graphics c.settings.input.add=Add new +c.settings.input.backwards=Move Backwards +c.settings.input.boost=Boost movement +c.settings.input.chat=Toggle chat +c.settings.input.forwards=Move Forwards +c.settings.input.fullscreen=Toggle fullscreen +c.settings.input.interact=Interact +c.settings.input.join_spectate=Join/Spectate c.settings.input.joypad_axis=Joypad axis %s c.settings.input.joypad=%s (Joypad) c.settings.input.keyboard=%s (Keyboard) +c.settings.input.left=Move Left c.settings.input.mouse_button=Mouse button %s +c.settings.input.next=Select next item c.settings.input.other_event=Other event c.settings.input.press_any_key=Press any key... -c.settings.input.scroll_down=Scroll down -c.settings.input.scroll_up=Scroll up -c.settings.input.scroll_down_discrete=Scroll down (discrete) -c.settings.input.scroll_up_discrete=Scroll up (discrete) -c.settings.input.forwards=Move Forwards -c.settings.input.backwards=Move Backwards -c.settings.input.left=Move Left +c.settings.input.previous=Select previous item +c.settings.input.reset=Reset camera c.settings.input.right=Move Right +c.settings.input.rotate_down=Rotate camera down c.settings.input.rotate_left=Rotate camera left c.settings.input.rotate_right=Rotate camera right c.settings.input.rotate_up=Rotate camera up -c.settings.input.rotate_down=Rotate camera down -c.settings.input.interact=Interact -c.settings.input.boost=Boost movement -c.settings.input.zoom_in=Zoom in -c.settings.input.zoom_out=Zoom out +c.settings.input.scroll_down_discrete=Scroll down (discrete) +c.settings.input.scroll_down=Scroll down +c.settings.input.scroll_up_discrete=Scroll up (discrete) +c.settings.input.scroll_up=Scroll up +c.settings.input.start_game=Start game c.settings.input.zoom_in_discrete=Zoom in (discrete) +c.settings.input.zoom_in=Zoom in c.settings.input.zoom_out_discrete=Zoom out (discrete) -c.settings.input.chat=Toggle chat -c.settings.input.reset=Reset camera -c.settings.input.fullscreen=Toggle fullscreen -c.settings.input.previous=Select previous item -c.settings.input.next=Select next item -c.settings.input.start_game=Start game -c.settings.input.join_spectate=Join/Spectate +c.settings.input.zoom_out=Zoom out c.settings.input=Controls -c.settings.other.server_data=Server data directory (leave empty to auto-detect) c.settings.other.server_binary.placeholder=Enter path c.settings.other.server_binary=Server binary (leave empty to search PATH) +c.settings.other.server_data=Server data directory (leave empty to auto-detect) c.settings.other=Other c.settings.ui.language.system=System default c.settings.ui.language=Language c.settings.ui.scale_factor=UI scale factor c.settings.ui.scale_mode.resize=Resize +c.settings.ui.scale_mode.disabled=Disabled c.settings.ui.scale_mode=UI scale mode +c.settings.ui.touch_controls.automatic=Automatic +c.settings.ui.touch_controls.disabled=Disabled +c.settings.ui.touch_controls.enabled=Enabled c.settings.ui.touch_controls=Enable touch screen controls c.settings.ui=User interface c.settings.username=Username -- cgit v1.2.3-70-g09d2 From fff9e4419cfc23c43de187455f193f156b3ab0ab Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 11:43:42 +0200 Subject: relocalize play and character menu --- client/menu/character.tscn | 4 ++-- client/menu/play.tscn | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'client/menu') diff --git a/client/menu/character.tscn b/client/menu/character.tscn index ef0cd842..6652982c 100644 --- a/client/menu/character.tscn +++ b/client/menu/character.tscn @@ -82,7 +82,7 @@ grow_horizontal = 2 [node name="Label" type="Label" parent="VBoxContainer/top_panel/a"] layout_mode = 2 -text = "Username" +text = "c.settings.username" horizontal_alignment = 1 [node name="username" type="LineEdit" parent="VBoxContainer/top_panel/a"] @@ -144,7 +144,7 @@ offset_bottom = 22.0 grow_horizontal = 2 grow_vertical = 2 size_flags_vertical = 8 -text = "Back" +text = "c.menu.back" [node name="SceneTransition" parent="." instance=ExtResource("4_c0ocf")] visible = false diff --git a/client/menu/play.tscn b/client/menu/play.tscn index 959ca760..b91f7bda 100644 --- a/client/menu/play.tscn +++ b/client/menu/play.tscn @@ -59,7 +59,7 @@ layout_mode = 2 [node name="quick_connect" type="Button" parent="side/margin/options/second"] layout_mode = 2 -text = "Quick Connect" +text = "c.menu.play.quick_connect" alignment = 0 [node name="connect" type="HBoxContainer" parent="side/margin/options/second"] @@ -73,7 +73,7 @@ placeholder_text = "wss://example.org" [node name="connect" type="Button" parent="side/margin/options/second/connect"] layout_mode = 2 -text = "Connect" +text = "c.menu.play.connect" [node name="server" type="HBoxContainer" parent="side/margin/options/second"] layout_mode = 2 @@ -81,12 +81,12 @@ layout_mode = 2 [node name="control" type="Button" parent="side/margin/options/second/server"] layout_mode = 2 size_flags_horizontal = 3 -text = "Server" +text = "c.menu.play.server" alignment = 0 [node name="connect" type="Button" parent="side/margin/options/second/server"] layout_mode = 2 -text = "Connect" +text = "c.menu.play.connect" [node name="spacer2" type="Control" parent="side/margin/options/second"] custom_minimum_size = Vector2(0, 10) @@ -94,7 +94,7 @@ layout_mode = 2 [node name="back" type="Button" parent="side/margin/options/second"] layout_mode = 2 -text = "Back" +text = "c.menu.back" alignment = 0 [connection signal="pressed" from="side/margin/options/second/quick_connect" to="." method="_on_quick_connect_pressed"] -- cgit v1.2.3-70-g09d2 From 50113d09271aeb9c3be56be0bba729a91f4496a6 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 12:06:08 +0200 Subject: fix inupt keys in other languages --- client/menu/credits.gd | 10 ++--- client/multiplayer.gd | 8 ++-- locale/ar.ini | 40 +++++++++--------- locale/de.ini | 112 ++++++++++++++++++++++++------------------------- locale/en.ini | 13 +++--- locale/es.ini | 112 ++++++++++++++++++++++++------------------------- locale/eu.ini | 40 +++++++++--------- locale/fi.ini | 40 +++++++++--------- locale/fr.ini | 40 +++++++++--------- locale/he.ini | 40 +++++++++--------- locale/ja.ini | 40 +++++++++--------- locale/pl.ini | 40 +++++++++--------- locale/pt.ini | 40 +++++++++--------- locale/tr.ini | 40 +++++++++--------- locale/zh_Hans.ini | 112 ++++++++++++++++++++++++------------------------- locale/zh_Hant.ini | 40 +++++++++--------- 16 files changed, 382 insertions(+), 385 deletions(-) (limited to 'client/menu') diff --git a/client/menu/credits.gd b/client/menu/credits.gd index 0eccaae2..52a3b7e6 100644 --- a/client/menu/credits.gd +++ b/client/menu/credits.gd @@ -22,13 +22,13 @@ const cc_by_4 := "CC-BY 4.0" const cc_by_3 := "CC-BY 3.0" const cc0 := "CC0" var credits := [ - [tr("Models"), [ + [tr("c.credits.models"), [ ["kenney.nl", "Various Models", cc0], ["Kay Lousberg", "Kitchen tiles", cc0], ["Poly by Google", "Strawberry", cc_by_3], ["Poly by Google", "Fish", cc_by_3] ]], - [tr("Sounds"), [ + [tr("c.credits.sounds"), [ ["Dryoma", "Footstep sounds", cc_by_4], ["Koops", "Page_Turn_24.wav", cc_by_4], ["InspectorJ", "Pencil, Writing, Close, A.wav", cc_by_4], @@ -49,8 +49,8 @@ func _ready(): var text = "[center]" text += "\n\n\n[b]%s[/b]\n\n%s\n\n[b]%s[/b]\n\n\n" % [ - tr("Hurry Curry! - a game about cooking"), - tr("developed by"), + tr("c.credits.title"), + tr("c.credits.developed_by"), "\n".join(contributors) ] @@ -62,7 +62,7 @@ func _ready(): text += "[cell][left]%s[/left][/cell]" % entry[2] text += "[/table]\n\n\n" - text += "\n[b]%s[/b]\n\n\n[/center]" % tr("Thank You For Playing") + text += "\n[b]%s[/b]\n\n\n[/center]" % tr("c.credits.thanks") label.text = text diff --git a/client/multiplayer.gd b/client/multiplayer.gd index b38a9393..a70a5738 100644 --- a/client/multiplayer.gd +++ b/client/multiplayer.gd @@ -85,10 +85,8 @@ func _process(_delta): handle_packet(socket.get_packet()) elif state == WebSocketPeer.STATE_CLOSED: var code = socket.get_close_code() - var reason = socket.get_close_reason() if code == socket.STATE_CLOSED else tr("unavailable", "The reason for the websocket closing is unavailable") - connection_closed.emit( - tr("WebSocket closed with code: %d, reason %s. Clean: %s") % [code, reason, code != -1] - ) + var reason = socket.get_close_reason() if code == socket.STATE_CLOSED else tr("c.error.websocket.unavailable") + connection_closed.emit(tr("c.error.websocket") % [code, reason, code != -1]) self.queue_free() func handle_packet(bytes: PackedByteArray): @@ -108,7 +106,7 @@ func handle_packet(bytes: PackedByteArray): if major != VERSION_MAJOR and minor >= VERSION_MINOR: socket.close() connected = false - connection_closed.emit(tr("Server and client versions do not match. Server: %d.%d, Client: %d.%d.\nAre you sure the game is up to date?") % [major, minor, VERSION_MAJOR, VERSION_MINOR]) + connection_closed.emit(tr("c.error.version_mismatch") % [major, minor, VERSION_MAJOR, VERSION_MINOR]) "data": var item_names = decoded["data"]["item_names"] var tile_names = decoded["data"]["tile_names"] diff --git a/locale/ar.ini b/locale/ar.ini index 90b67a3f..83d9d815 100644 --- a/locale/ar.ini +++ b/locale/ar.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=استخدموا %s لتدوير الكاميرا -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=إملأ الشاشة -c.controls.interact=مسار الملف -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.down= +c.settings.input.left= +c.settings.input.reset=استخدموا %s لتدوير الكاميرا +c.settings.input.right= +c.settings.input.up= +c.settings.input.chat= +c.settings.input.fullscreen=إملأ الشاشة +c.settings.input.interact=مسار الملف +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=المطورين c.credits.thanks=شكرا لكم على اللعب c.credits.title=هري كري! - لعبة عن الطبخ @@ -140,7 +140,7 @@ unknown476=مفتاح الإزاحة/ العالي/SHIFT unknown484=عصا التحكم اليسرى unknown488=مفتاح الفراغ/SPACE c.settings.gameplay.invert_camera=عكّس حركة الكاميرا -unknown494=اضغطوا على %s لالتقاط الأغراض واضغطوا باستمرار على %s للتفاعل مع الأدوات +c.hint.interact=اضغطوا على %s لالتقاط الأغراض واضغطوا باستمرار على %s للتفاعل مع الأدوات unknown506=مفتاحا صفحة لأعلى(PageUp)/صفحة لأسفل(PageDown) unknown510=استخدموا %s لتدوير الكاميرا unknown514=مفاتيح الأسهم(Arrow keys) @@ -152,8 +152,8 @@ unknown534=مفتاح الهروب/Esc unknown538=زر القائمة/الهمبرغر/Menu unknown551=غير موجود unknown568=تسريحة الشعر %d -unknown572=النماذج -unknown576=الاصوات +c.credits.models=النماذج +c.credits.sounds=الاصوات c.settings.gameplay.setup_completed=تم الانتهاء من الإعداد الأولي. (إزيلوا علامة الإختيار وأعدوا التشغيل لإعادة الدخول) unknown622=يجب عليكم ملء جميع الحقول. unknown626=حسنا diff --git a/locale/de.ini b/locale/de.ini index e557a635..fb96b1c0 100644 --- a/locale/de.ini +++ b/locale/de.ini @@ -1,45 +1,31 @@ [hurrycurry] -c.controls.boost=Bewegungsschub -c.controls.camera_down=Kamera nach unten rotieren -c.controls.camera_left=Kamera nach links rotieren -c.controls.camera_reset=Kameraansicht zurücksetzen -c.controls.camera_right=Kamera nach rechts rotieren -c.controls.camera_up=Kamera nach oben rotieren -c.controls.chat=Chat öffnen/schließen -c.controls.fullscreen=Vollbild umschalten -c.controls.interact=Interargieren -c.controls.move_backward=Rückwärts bewegen -c.controls.move_forward=Vorwärts bewegen -c.controls.move_left=Nach links bewegen -c.controls.move_right=Nach rechts bewegen -c.controls.zoom_in=Hineinzoomen -c.controls.zoom_in_discrete=Hineinzoomen (diskret) -c.controls.zoom_out=Herauszoomen -c.controls.zoom_out_discrete=Herauszoomen (diskret) c.credits.developed_by=entwickelt von +c.credits.models=Modelle +c.credits.sounds=Soundeffekte c.credits.thanks=Danke fürs Spielen c.credits.title=Hurry Curry! - ein Spiel rund ums Kochen -c.error=Fehler c.error.cannot_cancel_no_game=Spiel kann nicht abgebrochen werde, da gerade kein Spiel läuft. c.error.must_join_to_cancel=Du must dem Spiel beitreten um es abbrechen zu können. c.error.placeholder=Dies sollte die Fehlernachricht sein. c.error.websocket=Web-Socket wurde geschlossen mit Code: %d, Grund %s. Sauber: %s -c.hint=Tipp +c.error=Fehler c.hint.boost=Drücke %s für Schub c.hint.framerate_low=Ihre Bildrate scheint niedrig zu sein. Sie können Ihre Grafikeinstellungen in den Optionen verringern. +c.hint.interact=Drücke %s, um Gegenstände aufzuheben und halte %s gedrückt, um mit Utensilien zu interagieren c.hint.movement=Nutze %s zum Bewegen c.hint.reset_camera=Drücke %s, um die Kameradrehung zurückzusetzen c.hint.zoom_camera=Nutze %s zum Zoomen +c.hint=Tipp c.lobby.botenable=Roboter aktivieren c.lobby.mapname=Kartenname c.lobby.players=Spieler c.lobby.start=Spiel starten -c.map.difficulty=Schwierigkeitsstufe c.map.difficulty.0=Einfach c.map.difficulty.1=Schwer c.map.difficulty.2=Medium c.map.difficulty.3=Unspielbar c.map.difficulty.4=Sehr schwer +c.map.difficulty=Schwierigkeitsstufe c.map.players_recommended=%d Spieler empfohlen c.menu.back=Zurück c.menu.credits=Anerkennung @@ -53,10 +39,10 @@ c.menu.ingame.reconnect=Erneut verbinden c.menu.ingame.resume=Fortsetzen c.menu.ingame.spectate=Zuschauen c.menu.my_chef=Mein Koch -c.menu.play=Spielen c.menu.play.connect=Verbinden c.menu.play.quick_connect=Jetzt verbinden c.menu.play.server=Server +c.menu.play=Spielen c.menu.quit=Verlassen c.menu.settings=Einstellungen c.score.acceptable=Akzeptabler Service @@ -64,56 +50,77 @@ c.score.completed=Abgeschlossen c.score.excellent=Ausgezeichneter Service c.score.failed=Verfehlt c.score.good=Guter Service -c.score.points=Punkte c.score.points_par=Sie haben %s Punkte gesammelt +c.score.points=Punkte c.score.poor=Schlechter Service c.settings.apply=Speichern & Anwenden -c.settings.audio=Audio c.settings.audio.master_volume=Gesamtlautstärke c.settings.audio.music_volume=Musiklautstärke c.settings.audio.sfx_volume=Effektlautstärke -c.settings.input=Steuerung -c.settings.input.add=Hinzufügen -c.settings.input.joypad=%s (Joypad) -c.settings.input.joypad_axis=Joypad-Achse %s -c.settings.input.keyboard=%s (Tastatur) -c.settings.input.mouse_button=Maustaste %s -c.settings.input.other_event=Anderes Ereignis -c.settings.input.press_any_key=Drücke eine Taste... +c.settings.audio=Audio +c.settings.gameplay.interpolate_camera_rotation=Kameradrehung glätten +c.settings.gameplay.invert_camera=Kamerabewegung invertieren +c.settings.gameplay.latch_boost=Schub immer bis zum Anschlag verlängern +c.settings.gameplay.setup_completed=Ersteinrichtung abgeschlossen (Deaktivieren und Spiel neu starten zum Neueinrichten) +c.settings.gameplay.tutorial_started=Anleitung gestartet +c.settings.gameplay.usernames=Benutzernamen anzeigen +c.settings.gameplay=Spiel +c.settings.graphics.aa=Kantenglättung +c.settings.graphics.ao=Umgebungsverdeckung c.settings.graphics.debug_info=Diagnosedaten anzeigen (Bildrate, etc.) -c.settings.graphics.fullscreen=Vollbild c.settings.graphics.fullscreen.always=Immer c.settings.graphics.fullscreen.keep=Beibehalten c.settings.graphics.fullscreen.never=Nie -c.settings.gameplay=Spiel -c.settings.gameplay.latch_boost=Schub immer bis zum Anschlag verlängern -c.settings.graphics.gi=Globale Beleuchtung +c.settings.graphics.fullscreen=Vollbild c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GlobaleBeleuchtung +c.settings.graphics.gi=Globale Beleuchtung c.settings.graphics.glow=Glow aktivieren -c.settings.graphics=Grafikvoreinstellung -c.settings.graphics.aa=Kantenglättung -c.settings.graphics.ao=Umgebungsverdeckung -c.settings.graphics.taa=Zeitliche Kantenglättung c.settings.graphics.grass_amount=3D-Grasmenge pro Tile -c.settings.ui.language=Sprache -c.settings.ui.language.system=Systemstandard c.settings.graphics.lq_trees=Low-poly-Bäume -c.settings.other=Sonstiges c.settings.graphics.preset.high=Hoch c.settings.graphics.preset.low=Niedrig c.settings.graphics.preset.medium=Mittel -c.settings.other.server_data=Server Datenverzeichnis (leer lassen, um automatisch zu erkennen) -c.settings.other.server_binary=Pfad zum Server (leer lassen, um PATH zu durchsuchen) -c.settings.other.server_binary.placeholder=Pfad eingeben c.settings.graphics.shadows=Schatten aktivieren -c.settings.gameplay.interpolate_camera_rotation=Kameradrehung glätten -c.settings.ui=Benutzeroberfläche +c.settings.graphics.taa=Zeitliche Kantenglättung +c.settings.graphics.ui_blur=Benutzeroberflächenunschärfe +c.settings.graphics=Grafikvoreinstellung +c.settings.input.add=Hinzufügen +c.settings.input.boost=Bewegungsschub +c.settings.input.chat=Chat öffnen/schließen +c.settings.input.fullscreen=Vollbild umschalten +c.settings.input.interact=Interargieren +c.settings.input.joypad_axis=Joypad-Achse %s +c.settings.input.joypad=%s (Joypad) +c.settings.input.keyboard=%s (Tastatur) +c.settings.input.mouse_button=Maustaste %s +c.settings.input.backwards=Rückwärts bewegen +c.settings.input.forwards=Vorwärts bewegen +c.settings.input.left=Nach links bewegen +c.settings.input.right=Nach rechts bewegen +c.settings.input.other_event=Anderes Ereignis +c.settings.input.press_any_key=Drücke eine Taste... +c.settings.input.reset=Kameraansicht zurücksetzen +c.settings.input.rotate_down=Kamera nach unten rotieren +c.settings.input.rotate_left=Kamera nach links rotieren +c.settings.input.rotate_right=Kamera nach rechts rotieren +c.settings.input.rotate_up=Kamera nach oben rotieren +c.settings.input.zoom_in_discrete=Hineinzoomen (diskret) +c.settings.input.zoom_in=Hineinzoomen +c.settings.input.zoom_out_discrete=Herauszoomen (diskret) +c.settings.input.zoom_out=Herauszoomen +c.settings.input=Steuerung +c.settings.other.server_binary.placeholder=Pfad eingeben +c.settings.other.server_binary=Pfad zum Server (leer lassen, um PATH zu durchsuchen) +c.settings.other.server_data=Server Datenverzeichnis (leer lassen, um automatisch zu erkennen) +c.settings.other=Sonstiges +c.settings.ui.language.system=Systemstandard +c.settings.ui.language=Sprache c.settings.ui.scale_factor=Benutzeroberflächen Skalierungs Faktor -c.settings.ui.scale_mode=Benutzeroberflächen Skalierungs Modus c.settings.ui.scale_mode.resize=Skalieren +c.settings.ui.scale_mode=Benutzeroberflächen Skalierungs Modus c.settings.ui.touch_controls=Touchsteuerelemente aktivieren -c.settings.graphics.ui_blur=Benutzeroberflächenunschärfe +c.settings.ui=Benutzeroberfläche c.settings.username=Benutzername c.setup.contract_title=ARBEITSVERTRAG c.setup.par00=Dies ist ein verbindlicher Vertrag zwischen Ihnen (der/die Angestelte) und Musterfoods GmbH. Sie verpflichten sich, Ihren Aufgaben als Koch/Köchin bzw. Bedienung nachzugehen. @@ -139,25 +146,18 @@ unknown464=- unknown476=UMSCHALTEN unknown484=linken Stick unknown488=LEERTASTE -c.settings.gameplay.invert_camera=Kamerabewegung invertieren -unknown494=Drücke %s, um Gegenstände aufzuheben und halte %s gedrückt, um mit Utensilien zu interagieren unknown506=BildHoch/BildRunter unknown510=Nutze %s, um die Kameraansicht zurückzusetzen unknown514=Pfeiltasten unknown518=rechten Stick unknown524=Die Anzeige von Nutzernamen kann in den Einstellungen ein- und ausgeschaltet werden -c.settings.gameplay.usernames=Benutzernamen anzeigen unknown530=Drücken Sie %s und klicken Sie „Beitreten“, um beizutreten, während das Spiel läuft unknown534=ESCAPE unknown538=Menü-Knopf unknown551=Nicht verfügbar unknown568=Frisur %d -unknown572=Modelle -unknown576=Soundeffekte -c.settings.gameplay.setup_completed=Ersteinrichtung abgeschlossen (Deaktivieren und Spiel neu starten zum Neueinrichten) unknown622=Sie müssen alle verlangten Felder ausfüllen. unknown626=Akzeptieren -c.settings.gameplay.tutorial_started=Anleitung gestartet unknown732=Zurück unknown736=Nächstes unknown740=Beitreten / Zuschauen diff --git a/locale/en.ini b/locale/en.ini index 441f2f8e..0db72e87 100644 --- a/locale/en.ini +++ b/locale/en.ini @@ -1,15 +1,19 @@ [hurrycurry] c.credits.developed_by=developed by +c.credits.models=Models +c.credits.sounds=Sounds c.credits.thanks=Thank You For Playing c.credits.title=Hurry Curry! - a game about cooking c.error.cannot_cancel_no_game=Cannot cancel game since no game is running. c.error.must_join_to_cancel=You must join in order to be able to cancel the current game. c.error.placeholder=This should be the error message. +c.error.version_mismatch=Server and client versions do not match. Server: %d.%d, Client: %d.%d.%nAre you sure the game is up to date? +c.error.websocket.unavailable=unavailable c.error.websocket=WebSocket closed with code: %d, reason %s. Clean: %s c.error=Error c.hint.boost=Press %s to boost c.hint.framerate_low=Your framerate seems to be low. You can lower your graphics settings in the settings menu. -c.hint.interact=Press %s to pick up items and hold %s to interact with toolsDrücke %s, um Gegenstände aufzuheben und halte %s gedrückt= um mit Utensilien zu interagieren +c.hint.interact=Press %s to pick up items and hold %s to interact with tools c.hint.movement=Use %s to move c.hint.reset_camera=Press %s to reset the camera view c.hint.zoom_camera=Use %s to zoom in/out @@ -132,8 +136,8 @@ c.settings.other=Other c.settings.ui.language.system=System default c.settings.ui.language=Language c.settings.ui.scale_factor=UI scale factor -c.settings.ui.scale_mode.resize=Resize c.settings.ui.scale_mode.disabled=Disabled +c.settings.ui.scale_mode.resize=Resize c.settings.ui.scale_mode=UI scale mode c.settings.ui.touch_controls.automatic=Automatic c.settings.ui.touch_controls.disabled=Disabled @@ -169,7 +173,6 @@ unknown464=- unknown476=SHIFT unknown484=left stick unknown488=SPACE -unknown494=Press %s to pick up items and hold %s to interact with tools unknown506=PageUp/PageDown unknown510=Use %s to rotate the camera view unknown514=arrow keys @@ -179,11 +182,7 @@ unknown530=Press %s and click "Join" to join the game while it is running unknown534=ESCAPE unknown538=Menu button unknown551=unavailable -unknown564=Server and client versions do not match. Server: %d.%d, Client: %d.%d.%nAre you sure the game is up to date? unknown568=Hairstyle %d -unknown572=Models -unknown576=Sounds -unknown598=[/table]%n%n%n unknown622=You must fill out all requested fields. unknown626=Accept unknown732=Previous diff --git a/locale/es.ini b/locale/es.ini index 4bbbe45b..2c6d5883 100644 --- a/locale/es.ini +++ b/locale/es.ini @@ -1,45 +1,48 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=Usa %s para restablecer la cámara -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=Pantalla completa -c.controls.interact=Pone ruta -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=Usa %s para restablecer la cámara +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen=Pantalla completa +c.settings.input.interact=Pone ruta +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_in= +c.settings.input.zoom_out_discrete= +c.settings.input.zoom_out= c.credits.developed_by=desarrollado por +c.credits.models=Modelos +c.credits.sounds=Sonidos c.credits.thanks=Gracias por jugar c.credits.title=¡Hurry Curry! - un juego sobre cocinar -c.error=Error c.error.cannot_cancel_no_game=No se puede cancelar el juego porque no hay ningún juego en ejecución. c.error.must_join_to_cancel=Debes unirte para poder cancelar el juego. c.error.placeholder=///. c.error.websocket=WebSocket cerrado con código: %d, motivo %s. Limpiar: %s -c.hint=Pista +c.error=Error c.hint.boost=Presione %s para impulsar c.hint.framerate_low=La velocidad de cuadros parece ser baja. Puedes reducir la configuración de gráficos en el menú de configuración. +c.hint.interact=Presione %s para recoger elementos y mantenga presionado %s para interactuar con útiles c.hint.movement=Usa %s para moverte c.hint.reset_camera=Presione %s para restablecer la cámara c.hint.zoom_camera=Usa %s para hacer zoom +c.hint=Pista c.lobby.botenable=Activar robots c.lobby.mapname=Nombre del mapa c.lobby.players=Jugadores c.lobby.start=Iniciar juego -c.map.difficulty=Dificultad c.map.difficulty.0=Fácil c.map.difficulty.1=Duro c.map.difficulty.2=Moderado c.map.difficulty.3=Demasiado c.map.difficulty.4=Muy duro +c.map.difficulty=Dificultad c.map.players_recommended=%d jugadores recomendadas c.menu.back=Atrás c.menu.credits=Créditos @@ -53,10 +56,10 @@ c.menu.ingame.reconnect=Reconectar c.menu.ingame.resume=Resumir c.menu.ingame.spectate=Observar c.menu.my_chef=Mi cocinero -c.menu.play=Iniciar partida c.menu.play.connect=Conectar c.menu.play.quick_connect=Conexión rápida c.menu.play.server=Servidor +c.menu.play=Iniciar partida c.menu.quit=Abandonar c.menu.settings=Ajustes c.score.acceptable=Servicio aceptable @@ -64,56 +67,60 @@ c.score.completed=Terminado c.score.excellent=Excelente servicio c.score.failed=Fallido c.score.good=Buen servicio -c.score.points=Puntos c.score.points_par=Has acumulado %s puntos +c.score.points=Puntos c.score.poor=Servicio pobre c.settings.apply=Guardar & aplicar -c.settings.audio= c.settings.audio.master_volume=Volumen principal c.settings.audio.music_volume=Volumen de la música c.settings.audio.sfx_volume=Volumen de efectos especiales -c.settings.input= -c.settings.input.add= -c.settings.input.joypad= -c.settings.input.joypad_axis= -c.settings.input.keyboard= -c.settings.input.mouse_button=Botón de menú -c.settings.input.other_event= -c.settings.input.press_any_key= +c.settings.audio= +c.settings.gameplay.interpolate_camera_rotation=Interpolar la rotación de la cámara +c.settings.gameplay.invert_camera=Invertir el movimiento de la cámara +c.settings.gameplay.latch_boost=Siempre extienda el impulso a la duración máxima +c.settings.gameplay.setup_completed=Configuración inicial completa. (Desmarque y recomenza para reentrar) +c.settings.gameplay.tutorial_started=Tutorial comenzó +c.settings.gameplay.usernames=Mostrar nombres de usuarios +c.settings.gameplay= +c.settings.graphics.aa=Antialiasing +c.settings.graphics.ao=Oclusión ambiental c.settings.graphics.debug_info=Mostrar información de depuración (Cuadros por segundo, etc.) -c.settings.graphics.fullscreen=Pantalla completa c.settings.graphics.fullscreen.always=Siempre c.settings.graphics.fullscreen.keep=Mantener c.settings.graphics.fullscreen.never=Jamás -c.settings.gameplay= -c.settings.gameplay.latch_boost=Siempre extienda el impulso a la duración máxima -c.settings.graphics.gi=Iluminación global +c.settings.graphics.fullscreen=Pantalla completa c.settings.graphics.gi.sdfgi=SDFGI c.settings.graphics.gi.voxelgi=Voxel GI +c.settings.graphics.gi=Iluminación global c.settings.graphics.glow=Activar brillo -c.settings.graphics=Gráficos -c.settings.graphics.aa=Antialiasing -c.settings.graphics.ao=Oclusión ambiental -c.settings.graphics.taa=Antialiasing temporal c.settings.graphics.grass_amount=cantidad de hierba 3D por loseta de césped -c.settings.ui.language=Lengua -c.settings.ui.language.system=Sistema por defecto c.settings.graphics.lq_trees=Árboles con pocos polígonos -c.settings.other= c.settings.graphics.preset.high=Alto c.settings.graphics.preset.low=Bajo c.settings.graphics.preset.medium=Medio -c.settings.other.server_data=Directorio de datos del servidor (deja vacío para detectar automáticamente) -c.settings.other.server_binary=Binario del servidor (deja vacío para buscar RUTA) -c.settings.other.server_binary.placeholder=Pone ruta c.settings.graphics.shadows=Activar sombras -c.settings.gameplay.interpolate_camera_rotation=Interpolar la rotación de la cámara -c.settings.ui=Nombre de usuario +c.settings.graphics.taa=Antialiasing temporal +c.settings.graphics.ui_blur=Activar difuminar +c.settings.graphics=Gráficos +c.settings.input.add= +c.settings.input.joypad_axis= +c.settings.input.joypad= +c.settings.input.keyboard= +c.settings.input.mouse_button=Botón de menú +c.settings.input.other_event= +c.settings.input.press_any_key= +c.settings.input= +c.settings.other.server_binary.placeholder=Pone ruta +c.settings.other.server_binary=Binario del servidor (deja vacío para buscar RUTA) +c.settings.other.server_data=Directorio de datos del servidor (deja vacío para detectar automáticamente) +c.settings.other= +c.settings.ui.language.system=Sistema por defecto +c.settings.ui.language=Lengua c.settings.ui.scale_factor=Escala de interfaz de usuario -c.settings.ui.scale_mode=Modo d’escala de interfaz de usuario c.settings.ui.scale_mode.resize=Redimensionado +c.settings.ui.scale_mode=Modo d’escala de interfaz de usuario c.settings.ui.touch_controls=Permitir controles de pantalla táctil -c.settings.graphics.ui_blur=Activar difuminar +c.settings.ui=Nombre de usuario c.settings.username=Nombre de usuario c.setup.contract_title=CONTRATO DE EMPLEO c.setup.par00=Este es un contrato oficial entre usted (el empleado) y Musterfoods Ltd. (el empleador) para trabajar como chef o camarero. @@ -139,25 +146,18 @@ unknown464=- unknown476=CAMBIO unknown484=palo izquierdo unknown488=BARRA ESPACIADORA -c.settings.gameplay.invert_camera=Invertir el movimiento de la cámara -unknown494=Presione %s para recoger elementos y mantenga presionado %s para interactuar con útiles unknown506=RePág/AvPág unknown510=Usa %s para restablecer la cámara unknown514=teclas de flechas unknown518=palo derecho unknown524=Los nombres de usuarios se pueden habilitar/deshabilitar en la configuración -c.settings.gameplay.usernames=Mostrar nombres de usuarios unknown530=Presiona %s y haz clic en "Unirse" para unirte al juego unknown534=ESCAPAR unknown538=Botón de menú unknown551=Servidor (No disponible) unknown568=Peinado %d -unknown572=Modelos -unknown576=Sonidos -c.settings.gameplay.setup_completed=Configuración inicial completa. (Desmarque y recomenza para reentrar) unknown622=Debes completar todos los requisitos. unknown626=Aceptar -c.settings.gameplay.tutorial_started=Tutorial comenzó unknown732= unknown736= unknown740=Observar diff --git a/locale/eu.ini b/locale/eu.ini index e88c3589..b84e9191 100644 --- a/locale/eu.ini +++ b/locale/eu.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost=Bultzada -c.controls.camera_down=Kamera behera biratu -c.controls.camera_left=Kamera ezkerrera biratu -c.controls.camera_reset=Berrezarri kamera -c.controls.camera_right=Kamera eskuinera biratu -c.controls.camera_up=Kamera gora biratu -c.controls.chat=Chat-a erakutsi/gorde -c.controls.fullscreen=Pantaila osoa gaitu/desgaitu -c.controls.interact=Eragin -c.controls.move_backward=Mugitu atzera -c.controls.move_forward=Mugitu aurrera -c.controls.move_left=Mugitu ezkerrera -c.controls.move_right=Mugitu eskuinera -c.controls.zoom_in=Handiagotu -c.controls.zoom_in_discrete=Handiagotu (diskretua) -c.controls.zoom_out=Txikiagotu -c.controls.zoom_out_discrete=Txikiagotu (diskretua) +c.settings.input.boost=Bultzada +c.settings.input.rotate_down=Kamera behera biratu +c.settings.input.rotate_left=Kamera ezkerrera biratu +c.settings.input.reset=Berrezarri kamera +c.settings.input.rotate_right=Kamera eskuinera biratu +c.settings.input.rotate_up=Kamera gora biratu +c.settings.input.chat=Chat-a erakutsi/gorde +c.settings.input.fullscreen=Pantaila osoa gaitu/desgaitu +c.settings.input.interact=Eragin +c.settings.input.backwards=Mugitu atzera +c.settings.input.forwards=Mugitu aurrera +c.settings.input.left=Mugitu ezkerrera +c.settings.input.right=Mugitu eskuinera +c.settings.input.zoom_in=Handiagotu +c.settings.input.zoom_in_discrete=Handiagotu (diskretua) +c.settings.input.zoom_out=Txikiagotu +c.settings.input.zoom_out_discrete=Txikiagotu (diskretua) c.credits.developed_by=garatzailea c.credits.thanks=Eskerrik asko jostatzeagatik c.credits.title=Hurry Curry! - sukaldaritza jokoa @@ -140,7 +140,7 @@ unknown476=SHIFT unknown484=ezker palanka unknown488=HUTSUNEA c.settings.gameplay.invert_camera=Kamera mugimendua alderantzikatu -unknown494=Sakatu %s objektuak hartzeko eta eutsi %s tresnekin lan egiteko +c.hint.interact=Sakatu %s objektuak hartzeko eta eutsi %s tresnekin lan egiteko unknown506=PageUp/PageDown unknown510=Erabili %s kamera bista biratzeko unknown514=gezi teklak @@ -152,8 +152,8 @@ unknown534=ESCAPE unknown538=Menu botoia unknown551=eskuraezina unknown568=%d orrazkera -unknown572=Modeloak -unknown576=Soinuak +c.credits.models=Modeloak +c.credits.sounds=Soinuak c.settings.gameplay.setup_completed=Hasierako konfigurazioa osatuta. (Marka kendu eta berrabiarazi berriz sartzeko) unknown622=Eskatutako eremu guztiak bete behar dituzu. unknown626=Onartu diff --git a/locale/fi.ini b/locale/fi.ini index 0ea8e48e..322a0fa8 100644 --- a/locale/fi.ini +++ b/locale/fi.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset= -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen= -c.controls.interact= -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset= +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen= +c.settings.input.interact= +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by= c.credits.thanks= c.credits.title= @@ -140,7 +140,7 @@ unknown476= unknown484= unknown488= c.settings.gameplay.invert_camera= -unknown494= +c.hint.interact= unknown506= unknown510= unknown514= @@ -152,8 +152,8 @@ unknown534= unknown538= unknown551= unknown568= -unknown572= -unknown576= +c.credits.models= +c.credits.sounds= c.settings.gameplay.setup_completed= unknown622= unknown626= diff --git a/locale/fr.ini b/locale/fr.ini index dede783a..4ae4a305 100644 --- a/locale/fr.ini +++ b/locale/fr.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=Utilisez %s pour réinitialiser la caméra -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=Plein écran -c.controls.interact=Entrez le chemin -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=Utilisez %s pour réinitialiser la caméra +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen=Plein écran +c.settings.input.interact=Entrez le chemin +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=développé par c.credits.thanks=Merci d’avoir joué c.credits.title=Hurry Curry! - un jeu sur la cuisine @@ -140,7 +140,7 @@ unknown476=MAJUSCULE unknown484=stick gauche unknown488=BARRE D’ESPACE c.settings.gameplay.invert_camera=Inverser le mouvement de caméra -unknown494=Appuyez sur %s pour attraper des objets et maintenez %s enfoncé pour interagir avec les outils +c.hint.interact=Appuyez sur %s pour attraper des objets et maintenez %s enfoncé pour interagir avec les outils unknown506=Page précédente/Page suivante unknown510=Utilisez %s pour orienter le point de vue de la caméra unknown514=Touches fléchées @@ -152,8 +152,8 @@ unknown534=ÉCHAP unknown538=Bouton de menu unknown551=Serveur (Indisponible) unknown568=Coiffure %d -unknown572=Modèles -unknown576=Sons +c.credits.models=Modèles +c.credits.sounds=Sons c.settings.gameplay.setup_completed=Configuration initiale terminée. (Décochez et recommencer pour entrer à nouveau) unknown622=Vous devez remplir tous les champs requis. unknown626=Accepter diff --git a/locale/he.ini b/locale/he.ini index bd8ab350..e27de6c9 100644 --- a/locale/he.ini +++ b/locale/he.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=לחצו %s על מנת לאפס את מיקום המצלמה -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=מסך מלא -c.controls.interact=הכנס נתיב -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=לחצו %s על מנת לאפס את מיקום המצלמה +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen=מסך מלא +c.settings.input.interact=הכנס נתיב +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=פותח על ידי c.credits.thanks=תודה ששיחקתם c.credits.title=הרי קרי! - משחק בישול @@ -140,7 +140,7 @@ unknown476=SHIFT unknown484=ג'ויסטיק שמאלי unknown488=רווח c.settings.gameplay.invert_camera=הפוך תזוזת מצלמה -unknown494= +c.hint.interact= unknown506=PageUp/PageDown unknown510= unknown514=חיצים @@ -152,8 +152,8 @@ unknown534=Escape unknown538=כפתור התפריט unknown551= unknown568=תספורת %d -unknown572=מודלים -unknown576= +c.credits.models=מודלים +c.credits.sounds= c.settings.gameplay.setup_completed=אתחול ראשוני נגמר. (הורד סימון והדלק מחדש על מנת להכנס מחדש) unknown622=אנא מלאו את כל השדות הנדרשים. unknown626=אשר diff --git a/locale/ja.ini b/locale/ja.ini index bfa36fe3..dc286bb5 100644 --- a/locale/ja.ini +++ b/locale/ja.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=カメラをリセットするには %s を使用して -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=全画面 -c.controls.interact=パスを入力 -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=カメラをリセットするには %s を使用して +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen=全画面 +c.settings.input.interact=パスを入力 +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=開発者 c.credits.thanks=プレイしていただきありがとうございます c.credits.title=Hurry Curry!料理に関するゲーム @@ -140,7 +140,7 @@ unknown476=「シフト」 unknown484=左スティック unknown488=「スペース」 c.settings.gameplay.invert_camera=カメラの動きを反転 -unknown494=%s キーを押すとアイテムを拾い、 %s キーを押したままにするとツールを操作できます +c.hint.interact=%s キーを押すとアイテムを拾い、 %s キーを押したままにするとツールを操作できます unknown506=ページアップ/ページダウン unknown510=カメラをリセットするには %s を使用して unknown514=矢印キー @@ -152,8 +152,8 @@ unknown534=「エスケープ」 unknown538=メニューボタン unknown551=利用不可 unknown568=髪型 %d -unknown572=モデル -unknown576=サウンド +c.credits.models=モデル +c.credits.sounds=サウンド c.settings.gameplay.setup_completed=初期設定完了。(チェックを外して再起動して) unknown622=要求されたフィールドをすべて入力する必要があります。 unknown626=アクセプト diff --git a/locale/pl.ini b/locale/pl.ini index dd07997a..2fcc0e17 100644 --- a/locale/pl.ini +++ b/locale/pl.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=Użyj %s aby obrócić kamerę -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=Pełny ekran -c.controls.interact=Podaj ścieżkę -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=Użyj %s aby obrócić kamerę +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.rotate_chat= +c.settings.input.fullscreen=Pełny ekran +c.settings.input.interact=Podaj ścieżkę +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=stworzone przez c.credits.thanks=Dziękujemy za grę c.credits.title=Hurry Curry! - gra o gotowaniu @@ -140,7 +140,7 @@ unknown476=SHIFT unknown484=lewy dżojstik unknown488=SPACJA c.settings.gameplay.invert_camera=Odwrócone sterowanie kamerą -unknown494=Wciśnij %s aby podnieść przedmioty i przytrzymaj %s aby użyć narzędzia +c.hint.interact=Wciśnij %s aby podnieść przedmioty i przytrzymaj %s aby użyć narzędzia unknown506=PageUp/PageDown unknown510=Użyj %s aby obrócić kamerę unknown514=klawisze strzałek @@ -152,8 +152,8 @@ unknown534=ESCAPE unknown538=przycisk menu unknown551=niedostępne unknown568=Fryzura %d -unknown572=Modele -unknown576=Oprawa dźwiękowa +c.credits.models=Modele +c.credits.sounds=Oprawa dźwiękowa c.settings.gameplay.setup_completed=Konfiguracja wstępna ukończona. (Odznacz i zrestartuj aby wykonać ponownie) unknown622=Musisz wypełnić wymagane pola. unknown626=Zatwierdź diff --git a/locale/pt.ini b/locale/pt.ini index 0ea8e48e..322a0fa8 100644 --- a/locale/pt.ini +++ b/locale/pt.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset= -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen= -c.controls.interact= -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset= +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen= +c.settings.input.interact= +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by= c.credits.thanks= c.credits.title= @@ -140,7 +140,7 @@ unknown476= unknown484= unknown488= c.settings.gameplay.invert_camera= -unknown494= +c.hint.interact= unknown506= unknown510= unknown514= @@ -152,8 +152,8 @@ unknown534= unknown538= unknown551= unknown568= -unknown572= -unknown576= +c.credits.models= +c.credits.sounds= c.settings.gameplay.setup_completed= unknown622= unknown626= diff --git a/locale/tr.ini b/locale/tr.ini index 0ea8e48e..322a0fa8 100644 --- a/locale/tr.ini +++ b/locale/tr.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset= -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen= -c.controls.interact= -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset= +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen= +c.settings.input.interact= +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by= c.credits.thanks= c.credits.title= @@ -140,7 +140,7 @@ unknown476= unknown484= unknown488= c.settings.gameplay.invert_camera= -unknown494= +c.hint.interact= unknown506= unknown510= unknown514= @@ -152,8 +152,8 @@ unknown534= unknown538= unknown551= unknown568= -unknown572= -unknown576= +c.credits.models= +c.credits.sounds= c.settings.gameplay.setup_completed= unknown622= unknown626= diff --git a/locale/zh_Hans.ini b/locale/zh_Hans.ini index e1dbaafa..5ea728f5 100644 --- a/locale/zh_Hans.ini +++ b/locale/zh_Hans.ini @@ -1,45 +1,48 @@ [hurrycurry] -c.controls.boost=加速移动 -c.controls.camera_down=向下旋转摄像头 -c.controls.camera_left=向左旋转摄像头 -c.controls.camera_reset=重置摄像头视图 -c.controls.camera_right=向右旋转摄像头 -c.controls.camera_up=向上旋转摄像头 -c.controls.chat=切换聊天 -c.controls.fullscreen=切换全屏 -c.controls.interact=交互 -c.controls.move_backward=向后移动 -c.controls.move_forward=向前移动 -c.controls.move_left=向左移动 -c.controls.move_right=向右移动 -c.controls.zoom_in=放大 -c.controls.zoom_in_discrete=放大(离散) -c.controls.zoom_out=缩小 -c.controls.zoom_out_discrete=缩小(离散) +c.settings.input.boost=加速移动 +c.settings.input.rotate_down=向下旋转摄像头 +c.settings.input.rotate_left=向左旋转摄像头 +c.settings.input.reset=重置摄像头视图 +c.settings.input.rotate_right=向右旋转摄像头 +c.settings.input.rotate_up=向上旋转摄像头 +c.settings.input.chat=切换聊天 +c.settings.input.fullscreen=切换全屏 +c.settings.input.interact=交互 +c.settings.input.backwards=向后移动 +c.settings.input.forwards=向前移动 +c.settings.input.left=向左移动 +c.settings.input.right=向右移动 +c.settings.input.zoom_in_discrete=放大(离散) +c.settings.input.zoom_in=放大 +c.settings.input.zoom_out_discrete=缩小(离散) +c.settings.input.zoom_out=缩小 c.credits.developed_by=开发人员 +c.credits.models=模型 +c.credits.sounds=声音 c.credits.thanks=谢谢你玩 c.credits.title=Hurry Curry! — 一个关于烹饪的游戏 -c.error=错误 c.error.cannot_cancel_no_game=无法取消游戏,因为没有游戏正在运行。 c.error.must_join_to_cancel=您必须加入才能取消当前游戏。 c.error.placeholder=这应该是错误消息。 c.error.websocket=WebSocket 已关闭,代码为:%d,原因 %s。清理:%s -c.hint=提示 +c.error=错误 c.hint.boost=按 %s 来加速 c.hint.framerate_low=您的帧速率似乎较低。您可以在设置菜单中降低图形设置。 +c.hint.interact=按下 %s 可拾取物品,按住 %s 可与工具交互 c.hint.movement=使用 %s 来移动 c.hint.reset_camera=按 %s 重置摄像头视图 c.hint.zoom_camera=使用 %s 放大/缩小 +c.hint=提示 c.lobby.botenable=启用机器人 c.lobby.mapname=地图名称 c.lobby.players=玩家 c.lobby.start=开始游戏 -c.map.difficulty=难度 c.map.difficulty.0=简单 c.map.difficulty.1=困难 c.map.difficulty.2=中等 c.map.difficulty.3=无法玩 c.map.difficulty.4=非常困难 +c.map.difficulty=难度 c.map.players_recommended=%d 名玩家推荐 c.menu.back=返回 c.menu.credits=致谢 @@ -53,10 +56,10 @@ c.menu.ingame.reconnect=重新连接 c.menu.ingame.resume=重新开始 c.menu.ingame.spectate=旁观 c.menu.my_chef=我的厨师 -c.menu.play=玩 c.menu.play.connect=连接 c.menu.play.quick_connect=快速连接 c.menu.play.server=服务器 +c.menu.play=玩 c.menu.quit=退出 c.menu.settings=设置 c.score.acceptable=可接受的服务 @@ -64,56 +67,60 @@ c.score.completed=已完成 c.score.excellent=优质服务 c.score.failed=失败 c.score.good=服务好 -c.score.points=积分 c.score.points_par=您已收集 %s 积分 +c.score.points=积分 c.score.poor=服务差 c.settings.apply=保存并应用 -c.settings.audio=音频 c.settings.audio.master_volume=主音量 c.settings.audio.music_volume=音乐音量 c.settings.audio.sfx_volume=音效音量 -c.settings.input=限定 -c.settings.input.add=添加新的 -c.settings.input.joypad=%s(游戏手柄) -c.settings.input.joypad_axis=游戏手柄轴 %s -c.settings.input.keyboard=%s(键盘) -c.settings.input.mouse_button=鼠标按钮 %s -c.settings.input.other_event=其他活动 -c.settings.input.press_any_key=按任意键… +c.settings.audio=音频 +c.settings.gameplay.interpolate_camera_rotation=平滑的摄像头旋转 +c.settings.gameplay.invert_camera=反转摄像头移动 +c.settings.gameplay.latch_boost=始终将加速延长至最大持续时间 +c.settings.gameplay.setup_completed=初始设置完成。(取消选中并重启以重新进入) +c.settings.gameplay.tutorial_started=教程已开始 +c.settings.gameplay.usernames=显示用户名标签 +c.settings.gameplay=游戏玩法 +c.settings.graphics.aa=抗锯齿 +c.settings.graphics.ao=环境光遮蔽 c.settings.graphics.debug_info=显示调试信息(帧率等) -c.settings.graphics.fullscreen=全屏 c.settings.graphics.fullscreen.always=始终 c.settings.graphics.fullscreen.keep=保持 c.settings.graphics.fullscreen.never=从不 -c.settings.gameplay=游戏玩法 -c.settings.gameplay.latch_boost=始终将加速延长至最大持续时间 -c.settings.graphics.gi=全局照明 +c.settings.graphics.fullscreen=全屏 c.settings.graphics.gi.sdfgi=有符号距离场全局照明 c.settings.graphics.gi.voxelgi=体素全局照明 +c.settings.graphics.gi=全局照明 c.settings.graphics.glow=启用辉光 -c.settings.graphics=图形 -c.settings.graphics.aa=抗锯齿 -c.settings.graphics.ao=环境光遮蔽 -c.settings.graphics.taa=随机采样抗锯齿 c.settings.graphics.grass_amount=每块草砖的 3D 草量 -c.settings.ui.language=语言 -c.settings.ui.language.system=系统默认 c.settings.graphics.lq_trees=低多边形树 -c.settings.other=其他 c.settings.graphics.preset.high=高 c.settings.graphics.preset.low=低 c.settings.graphics.preset.medium=中 -c.settings.other.server_data=服务器数据目录(留空以自动检测) -c.settings.other.server_binary=服务器二进制文件(留空以搜索路径) -c.settings.other.server_binary.placeholder=输入路径 c.settings.graphics.shadows=启用阴影 -c.settings.gameplay.interpolate_camera_rotation=平滑的摄像头旋转 -c.settings.ui=用户界面 +c.settings.graphics.taa=随机采样抗锯齿 +c.settings.graphics.ui_blur=启用用户界面模糊 +c.settings.graphics=图形 +c.settings.input.add=添加新的 +c.settings.input.joypad_axis=游戏手柄轴 %s +c.settings.input.joypad=%s(游戏手柄) +c.settings.input.keyboard=%s(键盘) +c.settings.input.mouse_button=鼠标按钮 %s +c.settings.input.other_event=其他活动 +c.settings.input.press_any_key=按任意键… +c.settings.input=限定 +c.settings.other.server_binary.placeholder=输入路径 +c.settings.other.server_binary=服务器二进制文件(留空以搜索路径) +c.settings.other.server_data=服务器数据目录(留空以自动检测) +c.settings.other=其他 +c.settings.ui.language.system=系统默认 +c.settings.ui.language=语言 c.settings.ui.scale_factor=用户界面比例系数 -c.settings.ui.scale_mode=用户界面缩放模式 c.settings.ui.scale_mode.resize=调整大小 +c.settings.ui.scale_mode=用户界面缩放模式 c.settings.ui.touch_controls=启用触摸屏控制 -c.settings.graphics.ui_blur=启用用户界面模糊 +c.settings.ui=用户界面 c.settings.username=用户名 c.setup.contract_title=雇佣合同 c.setup.par00=这是您(雇员)和 Musterfoods Ltd. (雇主)之间有约束力的厨师或服务员合同。 @@ -139,25 +146,18 @@ unknown464=- unknown476=Shift unknown484=左摇杆 unknown488=空格键 -c.settings.gameplay.invert_camera=反转摄像头移动 -unknown494=按下 %s 可拾取物品,按住 %s 可与工具交互 unknown506=向上/向下翻页 unknown510=使用 %s 旋转摄像头视图 unknown514=方向键 unknown518=右摇杆 unknown524=可以在设置中启用/禁用用户名标签 -c.settings.gameplay.usernames=显示用户名标签 unknown530=按 %s 并单击“加入”以在游戏运行时加入游戏 unknown534=Esc unknown538=菜单按钮 unknown551=不可用 unknown568=发型 %d -unknown572=模型 -unknown576=声音 -c.settings.gameplay.setup_completed=初始设置完成。(取消选中并重启以重新进入) unknown622=您必须填写所有要求的字段。 unknown626=接受 -c.settings.gameplay.tutorial_started=教程已开始 unknown732=上一个 unknown736=下一个 unknown740=加入/旁观 diff --git a/locale/zh_Hant.ini b/locale/zh_Hant.ini index 047c59f6..6e304c2c 100644 --- a/locale/zh_Hant.ini +++ b/locale/zh_Hant.ini @@ -1,21 +1,21 @@ [hurrycurry] -c.controls.boost= -c.controls.camera_down= -c.controls.camera_left= -c.controls.camera_reset=使用 %s 來旋轉相機視角 -c.controls.camera_right= -c.controls.camera_up= -c.controls.chat= -c.controls.fullscreen=全螢幕 -c.controls.interact=輸入路徑 -c.controls.move_backward= -c.controls.move_forward= -c.controls.move_left= -c.controls.move_right= -c.controls.zoom_in= -c.controls.zoom_in_discrete= -c.controls.zoom_out= -c.controls.zoom_out_discrete= +c.settings.input.boost= +c.settings.input.rotate_down= +c.settings.input.rotate_left= +c.settings.input.reset=使用 %s 來旋轉相機視角 +c.settings.input.rotate_right= +c.settings.input.rotate_up= +c.settings.input.chat= +c.settings.input.fullscreen=全螢幕 +c.settings.input.interact=輸入路徑 +c.settings.input.backwards= +c.settings.input.forwards= +c.settings.input.left= +c.settings.input.right= +c.settings.input.zoom_in= +c.settings.input.zoom_in_discrete= +c.settings.input.zoom_out= +c.settings.input.zoom_out_discrete= c.credits.developed_by=開發者 c.credits.thanks=感謝你遊玩 c.credits.title=Hurry Curry!—一個關於烹飪的遊戲 @@ -140,7 +140,7 @@ unknown476=SHIFT unknown484=左搖桿 unknown488=空白鍵 c.settings.gameplay.invert_camera=反相相機移動 -unknown494=按下 %s 來拾取物品並按住 %s 來與工具互動 +c.hint.interact=按下 %s 來拾取物品並按住 %s 來與工具互動 unknown506=PageUp/PageDown unknown510=使用 %s 來旋轉相機視角 unknown514=方向鍵 @@ -152,8 +152,8 @@ unknown534=ESCAPE unknown538=選單按鈕 unknown551=不可用 unknown568=髮型 %d -unknown572=模型 -unknown576=聲音 +c.credits.models=模型 +c.credits.sounds=聲音 c.settings.gameplay.setup_completed=初始設定完成。(取消勾選並重新啟動以重新進入) unknown622=你必須填寫所有要求的欄位。 unknown626=接受 -- cgit v1.2.3-70-g09d2 From 5b602bee672c469e7b8f27d956c7b10c2321b08f Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 12:17:59 +0200 Subject: fallback language --- client/makefile | 2 +- client/map/map.gd | 2 +- client/menu/ingame.tscn | 14 +++++++------- client/menu/lobby.tscn | 6 +++--- client/menu/overlay.tscn | 18 +++++++++--------- client/player/player.gd | 7 +++---- locale/en.ini | 10 +++++----- locale/tools/src/main.rs | 12 ++++++++++++ 8 files changed, 41 insertions(+), 30 deletions(-) (limited to 'client/menu') diff --git a/client/makefile b/client/makefile index 71a4fb38..085ed748 100644 --- a/client/makefile +++ b/client/makefile @@ -37,4 +37,4 @@ po/locales.csv: $(LT) po/%.po: ../locale/%.ini $(LT) @mkdir -p po - $(LT) export-po $< $@ + $(LT) export-po $< $@ --fallback ../locale/en.ini diff --git a/client/map/map.gd b/client/map/map.gd index fc3bd1bb..f6258cc6 100644 --- a/client/map/map.gd +++ b/client/map/map.gd @@ -63,7 +63,7 @@ func apply_gi_setting(state): func gi_bake(): - if not Global.get_setting("graphics.gi") == 2: return + if Global.get_setting("graphics.gi") != "voxelgi": return print("Map: Rebaking VoxelGI") currently_baked = true gi_bake_blocking() diff --git a/client/menu/ingame.tscn b/client/menu/ingame.tscn index ce42bbdd..55678847 100644 --- a/client/menu/ingame.tscn +++ b/client/menu/ingame.tscn @@ -94,22 +94,22 @@ layout_mode = 2 [node name="Resume" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Resume" +text = "c.menu.ingame.resume" alignment = 0 [node name="Leave" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Join Game" +text = "c.menu.ingame.join" alignment = 0 [node name="Lobby" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Cancel game" +text = "c.menu.ingame.cancel" alignment = 0 [node name="Reconnect" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Reconnect" +text = "c.menu.ingame.reconnect" alignment = 0 [node name="Spacer2" type="Control" parent="Side/Margin/Options"] @@ -118,7 +118,7 @@ layout_mode = 2 [node name="Settings" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Settings" +text = "c.menu.settings" alignment = 0 [node name="Spacer3" type="Control" parent="Side/Margin/Options"] @@ -127,12 +127,12 @@ layout_mode = 2 [node name="MainMenu" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Main menu" +text = "c.menu.ingame.main_menu" alignment = 0 [node name="Quit" type="Button" parent="Side/Margin/Options"] layout_mode = 2 -text = "Quit game" +text = "c.menu.quit" alignment = 0 [connection signal="pressed" from="Side/Margin/Options/Resume" to="." method="_on_resume_pressed"] diff --git a/client/menu/lobby.tscn b/client/menu/lobby.tscn index 05b6507c..d1fe2233 100644 --- a/client/menu/lobby.tscn +++ b/client/menu/lobby.tscn @@ -124,7 +124,7 @@ layout_mode = 2 [node name="EnableBots" type="CheckButton" parent="HBoxContainer/Bottom/MarginContainer/VBoxContainer/Bots"] layout_mode = 2 -text = "Enable bots" +text = "c.menu.lobby.enable_bots" [node name="ScrollContainerCustom" type="ScrollContainer" parent="HBoxContainer/Bottom/MarginContainer/VBoxContainer/Bots"] visible = false @@ -145,7 +145,7 @@ alignment = 1 [node name="JoinSpectate" parent="HBoxContainer/Bottom/MarginContainer/VBoxContainer/VBoxContainer" instance=ExtResource("7_t6mox")] custom_minimum_size = Vector2(148, 0) layout_mode = 2 -text = "Spectate" +text = "c.menu.ingame.spectate" expand_icon = true controller_texture = ExtResource("11_5uugf") press_action = "join_spectate" @@ -153,7 +153,7 @@ press_action = "join_spectate" [node name="Start" parent="HBoxContainer/Bottom/MarginContainer/VBoxContainer/VBoxContainer" instance=ExtResource("7_t6mox")] custom_minimum_size = Vector2(148, 0) layout_mode = 2 -text = "Start game" +text = "c.menu.lobby.start_game" expand_icon = true controller_texture = ExtResource("9_q14bw") press_action = "start_game" diff --git a/client/menu/overlay.tscn b/client/menu/overlay.tscn index e28013db..0947e308 100644 --- a/client/menu/overlay.tscn +++ b/client/menu/overlay.tscn @@ -67,16 +67,16 @@ layout_mode = 2 theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 25 -text = "Completed" +text = "c.score.completed" [node name="Spacer" type="Control" parent="Score/Paper/Margin/Lines/Line1"] layout_mode = 2 size_flags_horizontal = 3 [node name="Completed" type="Label" parent="Score/Paper/Margin/Lines/Line1"] +auto_translate_mode = 2 custom_minimum_size = Vector2(100, 0) layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0, 0.278431, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 35 @@ -91,16 +91,16 @@ layout_mode = 2 theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 25 -text = "Failed" +text = "c.score.failed" [node name="Spacer" type="Control" parent="Score/Paper/Margin/Lines/Line2"] layout_mode = 2 size_flags_horizontal = 3 [node name="Failed" type="Label" parent="Score/Paper/Margin/Lines/Line2"] +auto_translate_mode = 2 custom_minimum_size = Vector2(100, 0) layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0.505882, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 35 @@ -115,16 +115,16 @@ layout_mode = 2 theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 35 -text = "Points" +text = "c.score.points" [node name="Spacer" type="Control" parent="Score/Paper/Margin/Lines/Line3"] layout_mode = 2 size_flags_horizontal = 3 [node name="Points" type="Label" parent="Score/Paper/Margin/Lines/Line3"] +auto_translate_mode = 2 custom_minimum_size = Vector2(100, 0) layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 45 @@ -156,9 +156,9 @@ texture = ExtResource("3_oum5g") layout_mode = 0 [node name="Seconds" type="Label" parent="Time/Paper/Line"] +auto_translate_mode = 2 custom_minimum_size = Vector2(100, 0) layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 45 @@ -166,8 +166,8 @@ text = "300" horizontal_alignment = 2 [node name="Point" type="Label" parent="Time/Paper/Line"] +auto_translate_mode = 2 layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 45 @@ -175,8 +175,8 @@ text = "." horizontal_alignment = 1 [node name="Decimals" type="Label" parent="Time/Paper/Line"] +auto_translate_mode = 2 layout_mode = 2 -auto_translate = false theme_override_colors/font_color = Color(0, 0, 0, 1) theme_override_fonts/font = ExtResource("3_u54fv") theme_override_font_sizes/font_size = 45 diff --git a/client/player/player.gd b/client/player/player.gd index bc978209..f034f14d 100644 --- a/client/player/player.gd +++ b/client/player/player.gd @@ -77,18 +77,17 @@ func _ready(): character.select_hairstyle(character_idx) clear_timer.timeout.connect(clear_message) - update_username_tag() - Global.settings_changed.connect(update_username_tag) + Settings.hook_changed_init("gameplay.usernames", update_username_tag) func update_position(new_position: Vector2, new_rotation: float, new_boosting: bool): position_ = new_position rotation_ = new_rotation boosting = new_boosting -func update_username_tag(): +func update_username_tag(state): var tag: Label3D = character.username_tag tag.text = username - tag.visible = Global.get_setting("graphics.usernames") + tag.visible = state func set_item(i: Item): i.owned_by = hand_base diff --git a/locale/en.ini b/locale/en.ini index 0db72e87..509cfd34 100644 --- a/locale/en.ini +++ b/locale/en.ini @@ -18,10 +18,6 @@ c.hint.movement=Use %s to move c.hint.reset_camera=Press %s to reset the camera view c.hint.zoom_camera=Use %s to zoom in/out c.hint=Hint -c.lobby.botenable=Enable bots -c.lobby.mapname=Map name -c.lobby.players=Players -c.lobby.start=Start game c.map.difficulty.0=Easy c.map.difficulty.1=Hard c.map.difficulty.2=Moderate @@ -37,11 +33,15 @@ c.menu.ingame.join2=Join Game c.menu.ingame.leave=Leave game c.menu.ingame.leave2=Leave Game c.menu.ingame.main_menu=Main menu -c.menu.ingame.mainmenu=Main Menu +c.menu.ingame.main_menu2=Main Menu c.menu.ingame.quit=Quit game c.menu.ingame.reconnect=Reconnect c.menu.ingame.resume=Resume c.menu.ingame.spectate=Spectate +c.menu.lobby.enable_bots=Enable bots +c.menu.lobby.mapname=Map name +c.menu.lobby.players=Players +c.menu.lobby.start=Start game c.menu.my_chef=My Chef c.menu.play.connect=Connect c.menu.play.quick_connect=Quick Connect diff --git a/locale/tools/src/main.rs b/locale/tools/src/main.rs index 1082581e..68805b99 100644 --- a/locale/tools/src/main.rs +++ b/locale/tools/src/main.rs @@ -26,6 +26,8 @@ enum Args { ExportPo { #[arg(long)] remap_ids: Option, + #[arg(long)] + fallback: Option, input: PathBuf, output: PathBuf, }, @@ -55,9 +57,19 @@ fn main() -> Result<()> { remap_ids: id_map, input, output, + fallback, } => { let mut ini = load_ini(&input)?; let id_map = id_map.map(|path| load_ini(&path)).transpose()?; + if let Some(fallback) = fallback { + let f = load_ini(&fallback)?; + for (k, v) in f { + if !ini.contains_key(&k) { + eprintln!("fallback: key {k:?} is missing"); + ini.insert(k, v); + } + } + } for &(code, name) in NATIVE_LANGUAGE_NAMES { ini.insert(format!("c.settings.ui.language.{code}"), name.to_owned()); -- cgit v1.2.3-70-g09d2 From 923b4d1aa63b6226365a53a7fe227a734760ed1e Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 13:56:56 +0200 Subject: fix hooks overriding each other --- client/map/auto_setup/environment_setup.gd | 6 +++--- client/map/auto_setup/light_setup.gd | 2 +- client/map/map.gd | 2 +- client/menu/blur_setup.gd | 2 +- client/menu/settings/dropdown_setting.gd | 2 +- client/menu/settings/input/input_setting.gd | 2 +- client/menu/settings/range_setting.gd | 2 +- client/menu/settings/text_setting.gd | 2 +- client/menu/settings/toggle_setting.gd | 2 +- client/player/player.gd | 2 +- client/settings.gd | 9 +++++---- 11 files changed, 17 insertions(+), 16 deletions(-) (limited to 'client/menu') diff --git a/client/map/auto_setup/environment_setup.gd b/client/map/auto_setup/environment_setup.gd index 73c3ee32..c484ca1d 100644 --- a/client/map/auto_setup/environment_setup.gd +++ b/client/map/auto_setup/environment_setup.gd @@ -22,9 +22,9 @@ func set_sky(sky_name: String): environment.sky.sky_material = load("res://map/environment/presets/%s_sky.tres" % sky_name) func _ready(): - Settings.hook_changed_init("graphics.ssao", func (x): environment.ssao_enabled = x) - Settings.hook_changed_init("graphics.gi", func (x): environment.sdfgi_enabled = x == "sdfgi" and allow_sdfgi) - Settings.hook_changed_init("graphics.glow", func (x): environment.glow_enabled = x) + Settings.hook_changed_init("graphics.ssao", false, func (x): environment.ssao_enabled = x) + Settings.hook_changed_init("graphics.gi", false, func (x): environment.sdfgi_enabled = x == "sdfgi" and allow_sdfgi) + Settings.hook_changed_init("graphics.glow", false, func (x): environment.glow_enabled = x) if !Global.on_vulkan(): environment.environment.tonemap_exposure = 0.5 diff --git a/client/map/auto_setup/light_setup.gd b/client/map/auto_setup/light_setup.gd index 4da2886e..7d1b0b7a 100644 --- a/client/map/auto_setup/light_setup.gd +++ b/client/map/auto_setup/light_setup.gd @@ -19,7 +19,7 @@ class_name LightSetup @export var completely_disable_light_if_shadows_disabled := false func _ready(): - Settings.hook_changed_init("graphics.shadows", apply_settings) + Settings.hook_changed_init("graphics.shadows", false, apply_settings) func apply_settings(setting: bool): if completely_disable_light_if_shadows_disabled: diff --git a/client/map/map.gd b/client/map/map.gd index f6258cc6..ce3c6dfa 100644 --- a/client/map/map.gd +++ b/client/map/map.gd @@ -52,7 +52,7 @@ func clear_tile(pos: Vector2i): func _ready(): voxelgi_timer.connect("timeout", gi_bake) - Settings.hook_changed("graphics.gi", apply_gi_setting) + Settings.hook_changed("graphics.gi", false, apply_gi_setting) func apply_gi_setting(state): if state == "voxelgi" and not currently_baked: diff --git a/client/menu/blur_setup.gd b/client/menu/blur_setup.gd index b5f80540..331d1f47 100644 --- a/client/menu/blur_setup.gd +++ b/client/menu/blur_setup.gd @@ -17,7 +17,7 @@ extends Control func _ready(): update(Global.get_setting("graphics.ui_blur")) - Settings.hook_changed("graphics.ui_blur", update) + Settings.hook_changed("graphics.ui_blur", false, update) func update(state): material.set_shader_parameter("enable_blur", state) diff --git a/client/menu/settings/dropdown_setting.gd b/client/menu/settings/dropdown_setting.gd index 4a3ce8c6..3d6b7c80 100644 --- a/client/menu/settings/dropdown_setting.gd +++ b/client/menu/settings/dropdown_setting.gd @@ -26,6 +26,6 @@ func create_row(): var row = super() row.value_node = OptionButton.new() for i in options: row.value_node.add_item(tr(nskey + "." + i)) - Settings.hook_changed_init(key, func (value): row.value_node.select(options.find(value))) + Settings.hook_changed_init(key, true, func (value): row.value_node.select(options.find(value))) row.value_node.item_selected.connect(func(item): Global.set_setting(key, options[item])) return row diff --git a/client/menu/settings/input/input_setting.gd b/client/menu/settings/input/input_setting.gd index 7a017ed2..7388af78 100644 --- a/client/menu/settings/input/input_setting.gd +++ b/client/menu/settings/input/input_setting.gd @@ -22,6 +22,6 @@ const INPUT_VALUE_NODE_SCENE = preload("res://menu/settings/input/input_value_no func create_row(): var row = super() row.value_node = INPUT_VALUE_NODE_SCENE.instantiate() - Settings.hook_changed_init(key, func(value): row.value_node.value = value) + Settings.hook_changed_init(key, true, func(value): row.value_node.value = value) row.value_node.changed.connect(func(): Global.set_setting(key, row.value_node.value)) return row diff --git a/client/menu/settings/range_setting.gd b/client/menu/settings/range_setting.gd index f1261b81..b119a205 100644 --- a/client/menu/settings/range_setting.gd +++ b/client/menu/settings/range_setting.gd @@ -36,6 +36,6 @@ func create_row(): row.value_node.max_value = max_value row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1)) - Settings.hook_changed_init(key, func(value): row.value_node.value = value) + Settings.hook_changed_init(key, true, func(value): row.value_node.value = value) row.value_node.value_changed.connect(func(value): Global.set_setting(key, value)) return row diff --git a/client/menu/settings/text_setting.gd b/client/menu/settings/text_setting.gd index 8bf2fa9f..dc9352ab 100644 --- a/client/menu/settings/text_setting.gd +++ b/client/menu/settings/text_setting.gd @@ -28,5 +28,5 @@ func create_row(): row.value_node = LineEdit.new() row.value_node.placeholder_text = placeholder row.value_node.text_changed.connect(func(text): Global.set_setting(key, text)) - Settings.hook_changed_init(key, func(text): row.value_node.text = text) + Settings.hook_changed_init(key, true, func(text): row.value_node.text = text) return row diff --git a/client/menu/settings/toggle_setting.gd b/client/menu/settings/toggle_setting.gd index c8c40469..8e0c030c 100644 --- a/client/menu/settings/toggle_setting.gd +++ b/client/menu/settings/toggle_setting.gd @@ -24,5 +24,5 @@ func create_row(): var row = super() row.value_node = CheckButton.new() row.value_node.pressed.connect(func(): Global.set_setting(key, row.value_node.button_pressed)) - Settings.hook_changed_init(key, func(value): row.value_node.button_pressed = value) + Settings.hook_changed_init(key, true, func(value): row.value_node.button_pressed = value) return row diff --git a/client/player/player.gd b/client/player/player.gd index f034f14d..f418337b 100644 --- a/client/player/player.gd +++ b/client/player/player.gd @@ -77,7 +77,7 @@ func _ready(): character.select_hairstyle(character_idx) clear_timer.timeout.connect(clear_message) - Settings.hook_changed_init("gameplay.usernames", update_username_tag) + Settings.hook_changed_init("gameplay.usernames", false, update_username_tag) func update_position(new_position: Vector2, new_rotation: float, new_boosting: bool): position_ = new_position diff --git a/client/settings.gd b/client/settings.gd index 828ecb62..5501f1ab 100644 --- a/client/settings.gd +++ b/client/settings.gd @@ -66,11 +66,12 @@ static func get_root(): ]) ]) -static func hook_changed(key: String, callable: Callable): - change_hooks_display[key] = callable +static func hook_changed(key: String, display: bool, callable: Callable): + if display: change_hooks_display[key] = callable + else: change_hooks_apply[key] = callable -static func hook_changed_init(key: String, callable: Callable): - hook_changed(key, callable) +static func hook_changed_init(key: String, display: bool, callable: Callable): + hook_changed(key, display, callable) callable.call(Global.get_setting(key)) static var change_hooks_display = {} -- cgit v1.2.3-70-g09d2 From 7ae48041d88ac32cd0892a78125103cbdccd7dab Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 7 Sep 2024 14:44:26 +0200 Subject: hook input changes --- client/menu/settings/input/input_manager.gd | 7 ------- client/settings.gd | 11 +++++++++-- 2 files changed, 9 insertions(+), 9 deletions(-) (limited to 'client/menu') diff --git a/client/menu/settings/input/input_manager.gd b/client/menu/settings/input/input_manager.gd index 784b4974..d216884b 100644 --- a/client/menu/settings/input/input_manager.gd +++ b/client/menu/settings/input/input_manager.gd @@ -38,13 +38,6 @@ func input_map_to_settings(map: Dictionary) -> Array: entries.append(InputSetting.new(k, events)) return entries -func settings_dictionary_to_input_map(settings: Dictionary) -> Dictionary: - var map := {} - for k in settings.keys(): - var setting: InputSetting = settings[k] - map[k] = setting.get_value() - return map - func change_input_map_action(action_name: String, events: Array, save: bool = true): if !InputMap.has_action(action_name): push_error("Action %s does not exist" % action_name, false) diff --git a/client/settings.gd b/client/settings.gd index 341db7cc..2c3ae9a5 100644 --- a/client/settings.gd +++ b/client/settings.gd @@ -79,6 +79,14 @@ static func hook_changed_init(key: String, display: bool, callable: Callable): hook_changed(key, display, callable) callable.call(Global.get_setting(key)) +static func get_category_dict(prefix: String): + var map = {} + for k in Global.settings.keys(): + var kn = k.trim_prefix(prefix+".") + if kn == k: continue + map[kn] = Global.get_setting(k) + return map + static var change_hooks_display = {} static var change_hooks_apply = { "input": h_input, @@ -149,8 +157,7 @@ static func h_fullscreen(mode: String): DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED) static func h_input(_x): - pass - # InputManager.apply_input_map(InputManager.settings_dictionary_to_input_map()) + InputManager.apply_input_map(Settings.get_category_dict("input")) # TODO whatever this does # if not get_setting("tutorial_started"): -- cgit v1.2.3-70-g09d2