diff options
author | metamuffin <metamuffin@disroot.org> | 2024-06-29 21:42:17 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-06-29 21:42:17 +0200 |
commit | c0f9942cd4562b169a4dddfdc083e505dc465830 (patch) | |
tree | abfaaf02350a5fbb4f4e90787f1c45055e024812 | |
parent | 95e008d419053a53e5e32c36751fae40eeec3725 (diff) | |
parent | 4e04980ea7d4548a305586ebf3fe9607c0840bd5 (diff) | |
download | hurrycurry-c0f9942cd4562b169a4dddfdc083e505dc465830.tar hurrycurry-c0f9942cd4562b169a4dddfdc083e505dc465830.tar.bz2 hurrycurry-c0f9942cd4562b169a4dddfdc083e505dc465830.tar.zst |
Merge branch 'master' of https://codeberg.org/metamuffin/undercooked
-rw-r--r-- | client/game.gd | 1 | ||||
-rw-r--r-- | client/global.gd | 6 | ||||
-rw-r--r-- | client/menu/credits_menu.gd | 11 | ||||
-rw-r--r-- | client/menu/menu_manager.gd | 16 | ||||
-rw-r--r-- | client/menu/menu_manager.tscn | 10 | ||||
-rw-r--r-- | client/menu/settings_menu.gd | 8 | ||||
-rw-r--r-- | client/menu/sounds/click.ogg | bin | 0 -> 24573 bytes | |||
-rw-r--r-- | client/menu/sounds/click.ogg.import | 19 | ||||
-rw-r--r-- | client/menu/sounds/hover.ogg | bin | 0 -> 15692 bytes | |||
-rw-r--r-- | client/menu/sounds/hover.ogg.import | 19 | ||||
-rw-r--r-- | client/player/player.gd | 1 | ||||
-rw-r--r-- | client/po/de.po | 137 | ||||
-rw-r--r-- | client/project.godot | 2 |
13 files changed, 219 insertions, 11 deletions
diff --git a/client/game.gd b/client/game.gd index a2893cc8..37dc4e99 100644 --- a/client/game.gd +++ b/client/game.gd @@ -104,6 +104,7 @@ func _ready(): mp.set_tile_item.connect(func(tile: Vector2i, item: int): var t: Tile = map.get_tile_instance(tile) var i = ItemFactory.produce(item_names[item], t.item_base) + i.position = t.item_base.global_position add_child(i) i.name = item_names[item] t.set_item(i) diff --git a/client/global.gd b/client/global.gd index 427809be..b9f35b6b 100644 --- a/client/global.gd +++ b/client/global.gd @@ -21,10 +21,10 @@ extends Node # "type": The type of the setting. Can be "toggle", "line", "range", "dropdown", or "dropdown_preset" # "value": The value of the setting. When using "dropdown", this contains an int # as the index for the respecitve element in the "options" array. -# "apply": Only for type "dropdown_preset": A dictionary to override all other settings. -# "min" and "max": Only for type "range": The min and max values. +# (Optional: Only when type "dropdown_preset") "apply": A dictionary to override all other settings. +# (Optional: Only when type "range") "min" and "max": The min and max values. # "description": The setting name displayed in the settings menu. -# (Optional: Only when type = "dropdown") "options": An array which contains all +# (Optional: Only when type "dropdown") "options": An array which contains all # possible values. const DEFAULT_PROFILE := { diff --git a/client/menu/credits_menu.gd b/client/menu/credits_menu.gd index ece061ec..e8abedb5 100644 --- a/client/menu/credits_menu.gd +++ b/client/menu/credits_menu.gd @@ -20,6 +20,9 @@ var cc_0 := ["kenney.nl", "Kay Lousberg"] var cc_by_3 := { "Glasses": "Jeremy Edelblut" } +var cc_by_4 := { + "Universal UI/Menu Soundpack": "Ellr" +} @onready var menu_manager: MenuManager = get_parent() @onready var label = $MarginContainer/Panel/MarginContainer/VBoxContainer/RichTextLabel @@ -36,10 +39,16 @@ func prepare(): for k in cc_by_3.keys(): var v = cc_by_3[k] - label.text += "[b]\"%s\" %s[/b]\n" % [k, v] + label.text += "[b]\"%s\" by %s[/b]\n" % [k, v] label.text += tr("Licensed under Creative Commons: By Attribution 3.0 License") label.text += "\nhttps://creativecommons.org/licenses/by/3.0/\n\n" + for k in cc_by_4.keys(): + var v = cc_by_4[k] + label.text += "[b]\"%s\" by %s[/b]\n" % [k, v] + label.text += tr("Licensed under Creative Commons: By Attribution 4.0 License") + label.text += "\nhttps://creativecommons.org/licenses/by/4.0/\n\n" + label.text += "[b]" label.text += tr("Additional CC0 assets by:") label.text += "[/b]\n" diff --git a/client/menu/menu_manager.gd b/client/menu/menu_manager.gd index 907f23e7..c15f181f 100644 --- a/client/menu/menu_manager.gd +++ b/client/menu/menu_manager.gd @@ -8,17 +8,25 @@ class_name MenuManager } @onready var transition = $SceneTransition +@onready var hover_sound = $Hover +@onready var click_sound = $Click + var menu_stack = ["main"] + func _ready(): Global.focus_first_button(menus[menu_stack.back()]) + for m in menus.values(): + connect_button_sounds(m) + if Global.fade_next: Global.fade_next = false transition.fade_in() func _input(_event): if Input.is_action_just_pressed("ui_cancel") && menu_stack.size() > 1: + play_click() go_back() func goto(menu_name: String): @@ -45,3 +53,11 @@ func show_menu(menu_name: String): menus[k].hide() await transition.fade_in() +func connect_button_sounds(node: Node): + if node is Button: + node.pressed.connect(play_click) + for c in node.get_children(): + connect_button_sounds(c) + +func play_click(): + click_sound.play() diff --git a/client/menu/menu_manager.tscn b/client/menu/menu_manager.tscn index 56cc6442..c6959407 100644 --- a/client/menu/menu_manager.tscn +++ b/client/menu/menu_manager.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=7 format=3 uid="uid://cd52sr1cmo8oj"] +[gd_scene load_steps=9 format=3 uid="uid://cd52sr1cmo8oj"] [ext_resource type="Script" path="res://menu/menu_manager.gd" id="1_c0rjm"] [ext_resource type="PackedScene" uid="uid://l4vm07dtda4j" path="res://menu/menu_background.tscn" id="2_nf7b6"] @@ -6,6 +6,8 @@ [ext_resource type="PackedScene" uid="uid://7mqbxa054bjv" path="res://menu/credits_menu.tscn" id="4_xhcd8"] [ext_resource type="PackedScene" uid="uid://8ic77jmadadj" path="res://menu/settings_menu.tscn" id="5_lifj8"] [ext_resource type="PackedScene" uid="uid://bg2d78ycorcqk" path="res://menu/scene_transition.tscn" id="6_p4u45"] +[ext_resource type="AudioStream" uid="uid://dtr1khfyqr56o" path="res://menu/sounds/hover.ogg" id="7_82cmi"] +[ext_resource type="AudioStream" uid="uid://cpyn511c5mtni" path="res://menu/sounds/click.ogg" id="8_qwknj"] [node name="MenuManager" type="Control"] layout_mode = 3 @@ -32,3 +34,9 @@ layout_mode = 1 [node name="SceneTransition" parent="." instance=ExtResource("6_p4u45")] visible = false layout_mode = 1 + +[node name="Hover" type="AudioStreamPlayer" parent="."] +stream = ExtResource("7_82cmi") + +[node name="Click" type="AudioStreamPlayer" parent="."] +stream = ExtResource("8_qwknj") diff --git a/client/menu/settings_menu.gd b/client/menu/settings_menu.gd index 4c14a459..68f3f2fc 100644 --- a/client/menu/settings_menu.gd +++ b/client/menu/settings_menu.gd @@ -32,7 +32,7 @@ func _ready(): func show_graphis(): menu_manager.goto("settings_graphics") -func update_rows(): +func update_rows(fix_focus = false): for c in options.get_children(): c.queue_free() @@ -43,6 +43,10 @@ func update_rows(): row.connect("apply_preset", apply_preset) options.add_child(row) settings[k] = row + + if fix_focus: + await get_tree().process_frame + Global.focus_first_button(self) func apply_preset(preset: Dictionary): for k in settings.keys(): @@ -51,4 +55,4 @@ func apply_preset(preset: Dictionary): for k in preset.keys(): Global.settings[k]["value"] = preset[k] - update_rows() + update_rows(true) diff --git a/client/menu/sounds/click.ogg b/client/menu/sounds/click.ogg Binary files differnew file mode 100644 index 00000000..db4aaf4e --- /dev/null +++ b/client/menu/sounds/click.ogg diff --git a/client/menu/sounds/click.ogg.import b/client/menu/sounds/click.ogg.import new file mode 100644 index 00000000..965b171a --- /dev/null +++ b/client/menu/sounds/click.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cpyn511c5mtni" +path="res://.godot/imported/click.ogg-e2bf88f5afe364b816ac9ff7e76a0967.oggvorbisstr" + +[deps] + +source_file="res://menu/sounds/click.ogg" +dest_files=["res://.godot/imported/click.ogg-e2bf88f5afe364b816ac9ff7e76a0967.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/client/menu/sounds/hover.ogg b/client/menu/sounds/hover.ogg Binary files differnew file mode 100644 index 00000000..17d414ca --- /dev/null +++ b/client/menu/sounds/hover.ogg diff --git a/client/menu/sounds/hover.ogg.import b/client/menu/sounds/hover.ogg.import new file mode 100644 index 00000000..b83eab9d --- /dev/null +++ b/client/menu/sounds/hover.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dtr1khfyqr56o" +path="res://.godot/imported/hover.ogg-45eb1351c35b416453fb2a6674b9d0f1.oggvorbisstr" + +[deps] + +source_file="res://menu/sounds/hover.ogg" +dest_files=["res://.godot/imported/hover.ogg-45eb1351c35b416453fb2a6674b9d0f1.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/client/player/player.gd b/client/player/player.gd index 75e3861e..b47216d6 100644 --- a/client/player/player.gd +++ b/client/player/player.gd @@ -45,6 +45,7 @@ const HAND_BASE_POSITION: Vector3 = Vector3(0, .25, .4) func _init(_id: int, new_name: String, pos: Vector2, new_character_idx: int, new_game: Game): add_child(character) position_ = pos + position_anim = pos name = new_name game = new_game diff --git a/client/po/de.po b/client/po/de.po index 047f24cb..ab44e021 100644 --- a/client/po/de.po +++ b/client/po/de.po @@ -18,6 +18,47 @@ msgstr "" "X-Generator: Poedit 3.4.4\n" #: menu/main_menu.tscn +msgid "Stop Server" +msgstr "Server stoppen" + +#: menu/main_menu.tscn +msgid "Server (Testing)" +msgstr "Server (Prüfe)" + +#: menu/main_menu.tscn +msgid "Server is starting..." +msgstr "Server startet..." + +#: menu/main_menu.tscn +msgid "Start Server" +msgstr "Server starten" + +#: menu/main_menu.tscn +msgid "Server (Failed)" +msgstr "Server (Fehlgeschlagen)" + +#: menu/main_menu.tscn +msgid "" +"The server crashed or exited in some way or another.\n" +"Godot's APIs are so bad however, that we really can't know why that " +"happend.\n" +"You should try starting the server from the command-line." +msgstr "" +"Der Server ist abgestürzt oder hat sich beendet\n" +"Godots Programmierschnittstellen sind jedoch zu unpräzise, um zu wissen, was " +"genau passiert ist.\n" +"Versuchen Sie, den Server aus der Kommandozeile zu starten." + +#: menu/main_menu.tscn +msgid "Server (Unavailable)" +msgstr "Server (Nicht verfügbar)" + +#: menu/main_menu.tscn +msgid "Server binary was not found. Please install the server seperately." +msgstr "" +"Server wurde nicht gefunden, bitte installieren Sie den Server getrennt." + +#: menu/main_menu.tscn msgid "Quick Connect" msgstr "Jetzt verbinden" @@ -34,10 +75,14 @@ msgid "Settings" msgstr "Einstellungen" #: menu/main_menu.tscn +msgid "Server" +msgstr "Server" + +#: menu/main_menu.tscn msgid "Credits" msgstr "Anerkennung" -#: menu/main_menu.tscn menu/ingame_menu.tscn +#: menu/main_menu.tscn msgid "Quit" msgstr "Verlassen" @@ -114,20 +159,106 @@ msgid "Reconnect" msgstr "Erneut verbinden" #: menu/ingame_menu.tscn -msgid "Main Menu" +msgid "Main menu" msgstr "Hauptmenü" +#: menu/ingame_menu.tscn +msgid "Quit game" +msgstr "Verlassen" + #: global.gd msgid "Interpolate the camera rotation" msgstr "Kameradrehung interpolieren" #: global.gd -msgid "Just a test value" +msgid "Server binary (leave empty to search PATH)" +msgstr "Pfad zum Server (leer lassen, um PATH zu durchsuchen)" + +#: global.gd +msgid "Server data directory (leave empty to auto-detect)" +msgstr "Server Datenverzeichnis (leer lassen, um automatisch zu erkennen)" + +#: global.gd +msgid "Low" +msgstr "Niedrig" + +#: global.gd +msgid "Medium" +msgstr "Mittel" + +#: global.gd +msgid "High" +msgstr "Hoch" + +#: global.gd +msgid "Ultra" +msgstr "Ultra" + +#: global.gd +msgid "Graphics preset" +msgstr "Grafikvoreinstellung" + +#: global.gd +msgid "Use VoxelGI (Blocks the game on map update)" +msgstr "VoxelGI verwenden (blockiert das Spiel, wenn die Map sich verändert)" + +#: global.gd +msgid "Use SDFGI (Doesn't block the game but is more resource-hungry)" msgstr "" +"SDFGI verwenden (blockiert das Spiel nicht, ist aber weniger " +"Ressourcenschonend)" + +#: global.gd +msgid "3D grass amount per grass tile" +msgstr "3D-Grasmenge pro Tile" #: menu/settings_menu.tscn msgid "Back to Main Menu" msgstr "Zurück zum Hauptmenü" +#: menu/setup_menu.tscn +msgid "EMPLOYMENT CONTRACT" +msgstr "ARBEITSVERTRAG" + +#: menu/setup_menu.tscn +msgid "1. [b]Name of the Employee[/b]" +msgstr "1. [b]Name der angestellten Person[/b]" + +#: menu/setup_menu.tscn +msgid "" +"2. [b]Working Uniform.[/b] You must always have one of the following " +"hairstyles." +msgstr "" +"2. [b]Arbeitsuniform.[/b] Sie müssen immer eine der folgenden Frisuren " +"tragen." + +#: menu/setup_menu.tscn +msgid "Hairstyle 1" +msgstr "Frisur 1" + +#: menu/setup_menu.tscn +msgid "Hairstyle 2" +msgstr "Frisur 2" + +#: menu/setup_menu.tscn +msgid "Hairstyle 3" +msgstr "Frisur 3" + +#: menu/setup_menu.tscn +msgid "" +"2. [b]Duties.[/b] It is your duty to serve customers the meal or item that " +"they request.\n" +msgstr "" +"2. [b]Pflichten.[/b] Es ist ihre Pflicht, die bestellten Mahlzeiten zu " +"servieren.\n" + +#: menu/setup_menu.tscn +msgid "" +"3. [b]Additional Terms.[/b] You shall not duplicate plates. (That is [u]NOT[/" +"u] possible!)\n" +msgstr "" +"3. [b]Zusätzliche Richtlinien.[/b] Sie dürfen keine Teller duplizieren. (Das " +"ist [u]NICHT[/u] möglich!)\n" + #~ msgid "This textbox is useless." #~ msgstr "Diese Textbox ist nutzlos." diff --git a/client/project.godot b/client/project.godot index 59515f71..d595d655 100644 --- a/client/project.godot +++ b/client/project.godot @@ -128,7 +128,7 @@ chat={ [internationalization] locale/translations=PackedStringArray("res://po/de.po") -locale/translations_pot_files=PackedStringArray("res://menu/main_menu.tscn", "res://menu/character_menu.tscn", "res://menu/credits_menu.tscn", "res://menu/error_menu.tscn", "res://menu/ingame_menu.tscn", "res://global.gd", "res://menu/settings_menu.tscn", "res://menu/credits_menu.gd") +locale/translations_pot_files=PackedStringArray("res://menu/main_menu.tscn", "res://menu/character_menu.tscn", "res://menu/credits_menu.tscn", "res://menu/error_menu.tscn", "res://menu/ingame_menu.tscn", "res://global.gd", "res://menu/settings_menu.tscn", "res://menu/credits_menu.gd", "res://menu/setup_menu.tscn") [rendering] |