From 2859b6dd4374283204cfa8bb062419cba7cc11c5 Mon Sep 17 00:00:00 2001 From: Lexi Quinn Date: Wed, 20 Aug 2025 19:30:30 +1000 Subject: [PATCH] added i18n keys for ingame item descriptions and button prompts --- Cards/overclock.tres | 2 +- Enemies/BabyEyeDog/baby_eye_dog.tres | 2 +- Enemies/Crystalisk/crystalisk.tres | 2 +- Enemies/ElderEyeDog/elder_eye_dog.tres | 2 +- Enemies/EyeDog/eye_dog.tres | 2 +- Locales/translation_template.pot | 214 ++++++++++++++++++- PCs/hero.tscn | 16 +- PCs/hud.gd | 4 +- Scenes/CardPrinter/card_printer.gd | 5 + Scenes/CardPrinter/card_printer.tscn | 4 +- Scenes/Menus/MainMenu/main_menu.gd | 14 +- Scenes/Menus/MainMenu/main_menu.tscn | 4 +- Scenes/Menus/options_menu.tscn | 11 +- Scripts/audio_options.gd | 2 +- Scripts/game.gd | 1 - Scripts/options_menu.gd | 9 + Scripts/pickup_notification.gd | 2 +- Towers/Ascension/tower_stats.tres | 2 +- Towers/Assault/tower_stats.tres | 2 +- Towers/Blowdart/tower_stats.tres | 2 +- Towers/BombLauncher/tower_stats.tres | 2 +- Towers/Fireball/tower_stats.tres | 2 +- Towers/Flamethrower/tower_stats.tres | 2 +- Towers/Gatling/tower_stats.tres | 4 +- Towers/GlueLauncher/tower_stats.tres | 2 +- Towers/Icicle/tower_stats.tres | 2 +- Towers/Overclock/tower_stats.tres | 2 +- Towers/Reactor/tower_stats.tres | 2 +- Towers/Refrigerator/tower_stats.tres | 2 +- Towers/RocketLauncher/tower_stats.tres | 2 +- Towers/Sniper/tower_stats.tres | 2 +- UI/EnemyCard/enemy_card_ui.gd | 2 +- Weapons/Ascension/weapon_stats.tres | 2 +- Weapons/Assault/weapon_stats.tres | 2 +- Weapons/Blowdart/weapon_stats.tres | 2 +- Weapons/BombLauncher/weapon_stats.tres | 2 +- Weapons/Fireball/weapon_stats.tres | 2 +- Weapons/Flamethrower/weapon_stats.tres | 2 +- Weapons/Gatling/weapon_stats.tres | 4 +- Weapons/GlueLauncher/weapon_stats.tres | 2 +- Weapons/Icicle/weapon_stats.tres | 2 +- Weapons/Overclock/weapon_stats.tres | 2 +- Weapons/Reactor/weapon_stats.tres | 2 +- Weapons/Refrigerator/weapon_stats.tres | 2 +- Weapons/RocketLauncher/weapon_stats.tres | 2 +- Weapons/Sniper/weapon_stats.tres | 2 +- Worlds/GreenPlanet/Levels/Bridge/bridge.tscn | 39 +--- choose_card_screen.gd | 6 +- choose_card_screen.tscn | 5 +- project.godot | 3 +- 50 files changed, 297 insertions(+), 114 deletions(-) diff --git a/Cards/overclock.tres b/Cards/overclock.tres index ee33fa5..2ea194c 100644 --- a/Cards/overclock.tres +++ b/Cards/overclock.tres @@ -16,5 +16,5 @@ weapon_scene = ExtResource("2_67wu0") weapon_stats = ExtResource("3_o52qt") tower_stats = ExtResource("2_o52qt") tags = Array[int]([]) -display_name = "CARD_NAME_SPEED_TOWER" +display_name = "CARD_NAME_SPEED_INCREASER" metadata/_custom_type_script = "uid://d40isem6w5d8" diff --git a/Enemies/BabyEyeDog/baby_eye_dog.tres b/Enemies/BabyEyeDog/baby_eye_dog.tres index 885e9eb..8324732 100644 --- a/Enemies/BabyEyeDog/baby_eye_dog.tres +++ b/Enemies/BabyEyeDog/baby_eye_dog.tres @@ -8,7 +8,7 @@ [resource] script = ExtResource("1_k5sd1") -title = "Baby Eye Dog" +title = "ENEMY_FAST_BABY" target_type = 1 scene = ExtResource("3_otbdk") icon = ExtResource("1_xgen5") diff --git a/Enemies/Crystalisk/crystalisk.tres b/Enemies/Crystalisk/crystalisk.tres index 047ab1e..ea1b3b5 100644 --- a/Enemies/Crystalisk/crystalisk.tres +++ b/Enemies/Crystalisk/crystalisk.tres @@ -8,7 +8,7 @@ [resource] script = ExtResource("4_x2l2n") -title = "Crystalisk" +title = "ENEMY_FLYING_CRYSTAL" target_type = 2 scene = ExtResource("3_7w5fm") icon = ExtResource("2_idym2") diff --git a/Enemies/ElderEyeDog/elder_eye_dog.tres b/Enemies/ElderEyeDog/elder_eye_dog.tres index 10203d6..6a376bc 100644 --- a/Enemies/ElderEyeDog/elder_eye_dog.tres +++ b/Enemies/ElderEyeDog/elder_eye_dog.tres @@ -8,7 +8,7 @@ [resource] script = ExtResource("1_q48il") -title = "Elder Eye Dog" +title = "ENEMY_HEAVY_WALKER" target_type = 1 scene = ExtResource("3_m808b") icon = ExtResource("1_lck53") diff --git a/Enemies/EyeDog/eye_dog.tres b/Enemies/EyeDog/eye_dog.tres index 623f5f8..472d7ea 100644 --- a/Enemies/EyeDog/eye_dog.tres +++ b/Enemies/EyeDog/eye_dog.tres @@ -14,7 +14,7 @@ region = Rect2(0, 0, 32, 32) [resource] resource_local_to_scene = true script = ExtResource("1_ivs7a") -title = "Eye Dog" +title = "ENEMY_DOG" target_type = 1 scene = ExtResource("3_tyyee") icon = ExtResource("2_tyyee") diff --git a/Locales/translation_template.pot b/Locales/translation_template.pot index 8982969..fea1f10 100644 --- a/Locales/translation_template.pot +++ b/Locales/translation_template.pot @@ -8,6 +8,8 @@ # res://Scenes/Menus/graphics_options.tscn # res://Scenes/Menus/keybind_options.tscn # res://Scenes/UI/keybind_popup.tscn +# res://choose_card_screen.tscn +# res://Scenes/Menus/options_menu.tscn # # FIRST AUTHOR , YEAR. # @@ -124,11 +126,13 @@ msgid "BUTTON_ACHIEVEMENTS" msgstr "" #: Scenes/Menus/MainMenu/main_menu.tscn +#: Scenes/Menus/options_menu.tscn msgid "BUTTON_CANCEL" msgstr "" #: Scenes/Menus/MainMenu/main_menu.tscn #: Scenes/Menus/CharacterSelect/character_select.tscn +#: Scenes/Menus/options_menu.tscn msgid "BUTTON_CONFIRM" msgstr "" @@ -177,14 +181,6 @@ msgstr "" msgid "BUTTON_RESTART" msgstr "" -#: Scenes/Menus/CharacterSelect/character_select.tscn -msgid "character name" -msgstr "" - -#: Scenes/Menus/CharacterSelect/character_select.tscn -msgid "------------------------" -msgstr "" - #: Scenes/Menus/CharacterSelect/character_select.tscn msgid "BUTTON_PREVIOUS" msgstr "" @@ -301,6 +297,54 @@ msgstr "" msgid "LABEL_BIND_KEY" msgstr "" +#: choose_card_screen.tscn +msgid "LABEL_CHOOSE_CARD" +msgstr "" + +#: choose_card_screen.tscn +msgid "LABEL_CARD_NAME" +msgstr "" + +#: choose_card_screen.tscn +msgid "BUTTON_VIEW_TOWER" +msgstr "" + +#: choose_card_screen.tscn +msgid "BUTTON_VIEW_WEAPON" +msgstr "" + +#: choose_card_screen.tscn +msgid "BUTTON_FINALIZE_CARD_CHOICE" +msgstr "" + +#: choose_card_screen.tscn +msgid "LABEL_CARD_DESCRIPTION" +msgstr "" + +#: choose_card_screen.tscn +msgid "LABEL_CARD_FEATURES" +msgstr "" + +#: choose_card_screen.tscn +msgid "LABEL_TARGET_LIST" +msgstr "" + +#: Scenes/Menus/options_menu.tscn +msgid "Gameplay" +msgstr "" + +#: Scenes/Menus/options_menu.tscn +msgid "Graphics" +msgstr "" + +#: Scenes/Menus/options_menu.tscn +msgid "Keybinds" +msgstr "" + +#: Scenes/Menus/options_menu.tscn +msgid "Audio" +msgstr "" + #: Classes/Engineer/class.tres msgid "CLASS_NAME_ENGINEER" msgstr "" @@ -313,54 +357,206 @@ msgstr "" msgid "CARD_NAME_PLATFORM_DASH" msgstr "" +#: Towers/Ascension/tower_stats.tres +msgid "DESC_TOWER_PLATFORM_DASH" +msgstr "" + +#: Weapons/Ascension/weapon_stats.tres +msgid "DESC_WEAPON_PLATFORM_DASH" +msgstr "" + #: Cards/assault.tres msgid "CARD_NAME_BASIC_GUN" msgstr "" +#: Towers/Assault/tower_stats.tres +msgid "DESC_TOWER_BASIC_GUN" +msgstr "" + +#: Weapons/Assault/weapon_stats.tres +msgid "DESC_WEAPON_BASIC_GUN" +msgstr "" + #: Cards/blowdart.tres msgid "CARD_NAME_POISON" msgstr "" +#: Towers/Blowdart/tower_stats.tres +msgid "DESC_TOWER_POISON" +msgstr "" + +#: Weapon/Blowdart/weapon_stats.tres +msgid "DESC_WEAPON_POISON" +msgstr "" + #: Cards/bomb_launcher.tres msgid "CARD_NAME_BOMB" msgstr "" +#: Towers/BombLauncher/tower_stats.tres +msgid "DESC_TOWER_BOMB" +msgstr "" + +#: Weapon/BombLauncher/weapon_stats.tres +msgid "DESC_WEAPON_BOMB" +msgstr "" + #: Cards/fireball.tres msgid "CARD_NAME_FIREBALL" msgstr "" +#: Towers/Fireball/tower_stats.tres +msgid "DESC_TOWER_FIREBALL" +msgstr "" + +#: Weapon/Fireball/weapon_stats.tres +msgid "DESC_WEAPON_FIREBALL" +msgstr "" + #: Cards/flamethrower.tres msgid "CARD_NAME_FLAMETHROWER" msgstr "" +#: Towers/Flamethrower/tower_stats.tres +msgid "DESC_TOWER_FLAMETHROWER" +msgstr "" + +#: Weapons/Flamethrower/weapon_stats.tres +msgid "DESC_WEAPON_FLAMETHROWER" +msgstr "" + #: Cards/gatling.tres msgid "CARD_NAME_ACCEL" msgstr "" +#: Towers/Gatling/tower_stats.tres +msgid "DESC_TOWER_ACCEL" +msgstr "" + +#: Weapons/Gatling/weapon_stats.tres +msgid "DESC_WEAPON_ACCEL" +msgstr "" + #: Cards/glue_launcher.tres msgid "CARD_NAME_GLUE" msgstr "" +#: Towers/GlueLauncher/tower_stats.tres +msgid "DESC_TOWER_GLUE" +msgstr "" + +#: Weapons/GlueLauncher/weapon_stats.tres +msgid "DESC_WEAPON_GLUE" +msgstr "" + #: Cards/icicle.tres msgid "CARD_NAME_ICE_SPIKE" msgstr "" +#: Towers/Icicle/tower_stats.tres +msgid "DESC_TOWER_ICE_SPIKE" +msgstr "" + +#: Weapons/Icicle/weapon_stats.tres +msgid "DESC_WEAPON_ICE_SPIKE" +msgstr "" + #: Cards/overclock.tres -msgid "CARD_NAME_SPEED_TOWER" +msgid "CARD_NAME_SPEED_INCREASER" +msgstr "" + +#: Towers/Overclock/tower_stats.tres +msgid "DESC_TOWER_SPEED_INCREASER" +msgstr "" + +#: Weapons/Overclock/weapon_stats.tres +msgid "DESC_WEAPON_SPEED_INCREASER" msgstr "" #: Cards/reactor.tres msgid "CARD_NAME_RADIATION" msgstr "" +#: Towers/Reactor/tower_stats.tres +msgid "DESC_TOWER_RADIATION" +msgstr "" + +#: Weapons/Reactor/weapon_stats.tres +msgid "DESC_WEAPON_RADIATION" +msgstr "" + #: Cards/refrigerator.tres msgid "CARD_NAME_FREEZER" msgstr "" +#: Towers/Refrigerator/tower_stats.tres +msgid "DESC_TOWER_FREEZER" +msgstr "" + +#: Weapons/Refrigerator/weapon_stats.tres +msgid "DESC_WEAPON_FREEZER" +msgstr "" + #: Cards/rocket_launcher.tres msgid "CARD_NAME_ROCKET" msgstr "" +#: Towers/RocketLauncher/tower_stats.tres +msgid "DESC_TOWER_ROCKET" +msgstr "" + +#: Weapons/RocketLauncher/weapon_stats.tres +msgid "DESC_WEAPON_ROCKET" +msgstr "" + #: Cards/sniper.tres msgid "CARD_NAME_SNIPER" msgstr "" + +#: Towers/Sniper/tower_stats.tres +msgid "DESC_TOWER_SNIPER" +msgstr "" + +#: Weapons/Sniper/weapon_stats.tres +msgid "DESC_WEAPON_SNIPER" +msgstr "" + +#: Scripts/options_menu.gd +msgid "OPTIONS_TAB_GAMEPLAY" +msgstr "" + +#: Scripts/options_menu.gd +msgid "OPTIONS_TAB_GRAPHICS" +msgstr "" + +#: Scripts/options_menu.gd +msgid "OPTIONS_TAB_KEYBINDS" +msgstr "" + +#: Scripts/options_menu.gd +msgid "OPTIONS_TAB_AUDIO" +msgstr "" + +#: PCs/hud.gd +msgid "PROMPT_START_WAVE" +msgstr "" + +#: Enemies/BabyEyeDog/baby_eye_dog.tres +msgid "ENEMY_FAST_BABY" +msgstr "" + +#: Enemies/Crystalisk/crystalisk.tres +msgid "ENEMY_FLYING_CRYSTAL" +msgstr "" + +#: Enemies/ElderEyeDog/elder_eye_dog.tres +msgid "ENEMY_HEAVY_WALKER" +msgstr "" + +#: Enemies/EyeDog/eye_dog.tres +msgid "ENEMY_DOG" +msgstr "" + +#: Scenes/CardPrinter/card_printer.gd +msgid "BUTTON_RADIO_INTERACT" +msgstr "" diff --git a/PCs/hero.tscn b/PCs/hero.tscn index 350ba2d..e118d67 100644 --- a/PCs/hero.tscn +++ b/PCs/hero.tscn @@ -320,7 +320,7 @@ max_look_up_angle = 80.0 enable_jumping = true weapon_holder = NodePath("../FirstPersonViewport/Head2/RightHand") -[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("player", "wave_count", "lives_count", "currency_count", "minimap_outline", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "wave_start_label", "place_icon", "swap_icon", "place_text", "swap_text", "new_energy_bar", "energy_label", "primary_duration", "secondary_duration", "blank_cassette_label")] +[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("player", "wave_count", "lives_count", "currency_count", "minimap_outline", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "wave_start_label", "place_icon", "swap_icon", "place_text", "swap_text", "new_energy_bar", "energy_label", "blank_cassette_label")] script = ExtResource("8_yl6ka") player = NodePath("..") wave_count = NodePath("EnemyTracker/WaveCount") @@ -343,8 +343,6 @@ swap_text = NodePath("SwapIcon/RichTextLabel") enemy_card_scene = ExtResource("18_dfkac") new_energy_bar = NodePath("EnergyBar") energy_label = NodePath("Currencies/HBoxContainer/EnergyLabel") -primary_duration = NodePath("weapon_duration") -secondary_duration = NodePath("weapon_duration2") blank_cassette_label = NodePath("Currencies/BlankCassetteLabel") [node name="FirstPersonCam" type="TextureRect" parent="HUD"] @@ -650,15 +648,17 @@ alignment = 2 [node name="StartWaveLabel" type="RichTextLabel" parent="HUD"] anchors_preset = -1 -anchor_left = 0.34 -anchor_top = 0.085 -anchor_right = 0.69 -anchor_bottom = 0.155 +anchor_left = 0.4 +anchor_top = 0.1 +anchor_right = 0.6 +anchor_bottom = 0.15 grow_horizontal = 2 mouse_filter = 2 bbcode_enabled = true -text = "[center]#Ready# Start wave[/center]" +text = "Press #Ready# Start wave" scroll_active = false +horizontal_alignment = 1 +vertical_alignment = 1 [node name="Control2" type="Control" parent="HUD"] layout_mode = 3 diff --git a/PCs/hud.gd b/PCs/hud.gd index 79452c1..0123da3 100644 --- a/PCs/hud.gd +++ b/PCs/hud.gd @@ -82,7 +82,7 @@ func set_energy_visible(value: bool) -> void: func _process(_delta: float) -> void: fps_label.text = "FPS: " + str(Engine.get_frames_per_second()) - wave_start_label.text = parse_action_tag("[center]Press #Ready# to start wave") + wave_start_label.text = tr(parse_action_tag("PROMPT_START_WAVE")) place_text.text = parse_action_tag("[center]#Primary Fire#") swap_text.text = parse_action_tag("[center]#Secondary Fire#") @@ -110,7 +110,7 @@ func tween_label(x: float) -> void: func set_hover_text(text: String) -> void: $TextureRect2.visible = true $TextureRect.visible = false - hover_text.text = parse_action_tag(text) + hover_text.text = tr(parse_action_tag(text)) hover_text.visible = true diff --git a/Scenes/CardPrinter/card_printer.gd b/Scenes/CardPrinter/card_printer.gd index 2b7c7bc..c81c5f0 100644 --- a/Scenes/CardPrinter/card_printer.gd +++ b/Scenes/CardPrinter/card_printer.gd @@ -1,5 +1,6 @@ class_name CardPrinter extends StaticBody3D +@export var button: InteractButton @export var button_collider: CollisionShape3D @export var card_selection_menu: PackedScene @@ -10,6 +11,10 @@ var reply_player: Hero var spawned_cards: Array[CardItem] = [] +func _ready() -> void: + button.hover_text = tr("BUTTON_RADIO_INTERACT") + + func get_faction_cards(faction: Card.Faction) -> Array[Card]: var valid_cards: Array[Card] = [] for card: Card in Data.cards: diff --git a/Scenes/CardPrinter/card_printer.tscn b/Scenes/CardPrinter/card_printer.tscn index 3745d82..ab6a34d 100644 --- a/Scenes/CardPrinter/card_printer.tscn +++ b/Scenes/CardPrinter/card_printer.tscn @@ -19,8 +19,9 @@ stream_0/stream = ExtResource("5_m033a") [sub_resource type="BoxShape3D" id="BoxShape3D_21y4o"] size = Vector3(2.11176, 1.16345, 0.664978) -[node name="CardPrinter" type="StaticBody3D" node_paths=PackedStringArray("button_collider")] +[node name="CardPrinter" type="StaticBody3D" node_paths=PackedStringArray("button", "button_collider")] script = ExtResource("1_qft15") +button = NodePath("StaticBody3D") button_collider = NodePath("StaticBody3D/CollisionShape3D2") card_selection_menu = ExtResource("2_kpujb") @@ -34,7 +35,6 @@ collision_layer = 16 collision_mask = 0 script = ExtResource("4_eavi1") press_cost = 1 -hover_text = "[center]#Interact# Record to blank cassette" [node name="CollisionShape3D2" type="CollisionShape3D" parent="StaticBody3D"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00542301, 0.653175, 0.254328) diff --git a/Scenes/Menus/MainMenu/main_menu.gd b/Scenes/Menus/MainMenu/main_menu.gd index 2bb06f4..88c3dd1 100644 --- a/Scenes/Menus/MainMenu/main_menu.gd +++ b/Scenes/Menus/MainMenu/main_menu.gd @@ -161,11 +161,13 @@ func _on_achievements_button_pressed() -> void: func _on_profile_manager_cancel_pressed() -> void: - $ProfileManager.visible = false + profile_controls.visible = false + main_controls.visible = true func _on_profile_manager_confirm_pressed() -> void: - $ProfileManager.visible = false + profile_controls.visible = false + main_controls.visible = true if $ProfileManager/VBoxContainer/DisplayName/LineEdit.text != "": change_profile_display_name($ProfileManager/VBoxContainer/DisplayName/LineEdit.text) $ProfileManager/VBoxContainer/DisplayName/LineEdit.text = "" @@ -188,10 +190,16 @@ func _on_mods_button_pressed() -> void: func _on_cancel_mods_pressed() -> void: - profile_controls.visible = true main_controls.visible = true mods_controls.visible = false func _on_confirm_mods_pressed() -> void: mods_controls.load_mod_list() + main_controls.visible = true + mods_controls.visible = false + + +func _on_stats_button_pressed() -> void: + main_controls.visible = false + profile_controls.visible = true diff --git a/Scenes/Menus/MainMenu/main_menu.tscn b/Scenes/Menus/MainMenu/main_menu.tscn index 6bc5a6b..d2b0bd1 100644 --- a/Scenes/Menus/MainMenu/main_menu.tscn +++ b/Scenes/Menus/MainMenu/main_menu.tscn @@ -67,7 +67,7 @@ region = Rect2(0, 0, 36, 36) atlas = ExtResource("17_6t4jd") region = Rect2(0, 0, 36, 36) -[node name="MainMenu" type="Control" node_paths=PackedStringArray("bg_level", "game_select_menu", "main_controls", "seed_entry", "mods_controls")] +[node name="MainMenu" type="Control" node_paths=PackedStringArray("bg_level", "game_select_menu", "main_controls", "seed_entry", "profile_controls", "mods_controls")] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 @@ -79,6 +79,7 @@ bg_level = NodePath("SubViewport/GridMap") game_select_menu = NodePath("GameSelectMenu") main_controls = NodePath("MainControls") seed_entry = NodePath("GameSelectMenu/VBoxContainer/HBoxContainer2/LineEdit") +profile_controls = NodePath("ProfileManager") mods_controls = NodePath("ModsMenu") [node name="TextureRect" type="TextureRect" parent="."] @@ -462,6 +463,7 @@ text = "BUTTON_CONFIRM" [connection signal="pressed" from="MainControls/PlayButton" to="." method="_on_play_button_pressed"] [connection signal="mouse_entered" from="MainControls/ModsButton" to="." method="_on_button_mouse_entered"] [connection signal="pressed" from="MainControls/ModsButton" to="." method="_on_mods_button_pressed"] +[connection signal="pressed" from="MainControls/StatsButton" to="." method="_on_stats_button_pressed"] [connection signal="mouse_entered" from="MainControls/OptionsButton" to="." method="_on_button_mouse_entered"] [connection signal="pressed" from="MainControls/OptionsButton" to="." method="_on_options_button_pressed"] [connection signal="mouse_entered" from="MainControls/QuitButton" to="." method="_on_button_mouse_entered"] diff --git a/Scenes/Menus/options_menu.tscn b/Scenes/Menus/options_menu.tscn index 1594c65..66b3bc9 100644 --- a/Scenes/Menus/options_menu.tscn +++ b/Scenes/Menus/options_menu.tscn @@ -12,7 +12,7 @@ random_pitch = 1.1 streams_count = 1 stream_0/stream = ExtResource("6_hhyef") -[node name="OptionsMenu" type="PanelContainer" node_paths=PackedStringArray("gameplay", "graphics", "keybinds")] +[node name="OptionsMenu" type="PanelContainer" node_paths=PackedStringArray("gameplay", "graphics", "keybinds", "audio")] anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 @@ -26,6 +26,7 @@ script = ExtResource("1_bievw") gameplay = NodePath("VBoxContainer/TabContainer/Gameplay") graphics = NodePath("VBoxContainer/TabContainer/Graphics") keybinds = NodePath("VBoxContainer/TabContainer/Keybinds") +audio = NodePath("VBoxContainer/TabContainer/Audio") [node name="VBoxContainer" type="VBoxContainer" parent="."] layout_mode = 2 @@ -33,10 +34,9 @@ layout_mode = 2 [node name="TabContainer" type="TabContainer" parent="VBoxContainer"] layout_mode = 2 size_flags_vertical = 3 -current_tab = 3 +current_tab = 0 [node name="Gameplay" parent="VBoxContainer/TabContainer" instance=ExtResource("3_25wuw")] -visible = false layout_mode = 2 metadata/_tab_index = 0 @@ -51,6 +51,7 @@ layout_mode = 2 metadata/_tab_index = 2 [node name="Audio" parent="VBoxContainer/TabContainer" instance=ExtResource("6_4vs8p")] +visible = false layout_mode = 2 metadata/_tab_index = 3 @@ -60,11 +61,11 @@ alignment = 2 [node name="Cancel" type="Button" parent="VBoxContainer/HBoxContainer"] layout_mode = 2 -text = "Discard" +text = "BUTTON_CANCEL" [node name="Confirm" type="Button" parent="VBoxContainer/HBoxContainer"] layout_mode = 2 -text = "Confirm" +text = "BUTTON_CONFIRM" [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] stream = SubResource("AudioStreamRandomizer_5otwj") diff --git a/Scripts/audio_options.gd b/Scripts/audio_options.gd index 2ae0882..2ee6680 100644 --- a/Scripts/audio_options.gd +++ b/Scripts/audio_options.gd @@ -1,4 +1,4 @@ -class_name AudioOptions +class_name AudioOptionsMenu extends VBoxContainer @export var master_input: SpinBox diff --git a/Scripts/game.gd b/Scripts/game.gd index 611c9be..c6cf253 100644 --- a/Scripts/game.gd +++ b/Scripts/game.gd @@ -126,7 +126,6 @@ func spawn_players() -> void: player.game_manager = self player.edit_tool.level = level player.hud.map_anchor = level - player.blank_cassettes += 1 player.player_name_tag.text = connected_player_profiles[peer_id].display_name player.position = level.player_spawns[p_i].global_position player.profile = connected_player_profiles[peer_id] diff --git a/Scripts/options_menu.gd b/Scripts/options_menu.gd index 7bac30d..176fcb3 100644 --- a/Scripts/options_menu.gd +++ b/Scripts/options_menu.gd @@ -4,13 +4,22 @@ extends Control @export var gameplay: GameplayOptionsMenu @export var graphics: GraphicsOptionsMenu @export var keybinds: KeybindsOptionsMenu +@export var audio: AudioOptionsMenu var game_manager: GameManager func _ready() -> void: + set_tab_locale() keybinds.ui_layer = game_manager.UILayer +func set_tab_locale() -> void: + gameplay.name = tr("OPTIONS_TAB_GAMEPLAY") + graphics.name = tr("OPTIONS_TAB_GRAPHICS") + keybinds.name = tr("OPTIONS_TAB_KEYBINDS") + audio.name = tr("OPTIONS_TAB_AUDIO") + + func _on_cancel_pressed() -> void: queue_free() diff --git a/Scripts/pickup_notification.gd b/Scripts/pickup_notification.gd index b640d93..07b2f51 100644 --- a/Scripts/pickup_notification.gd +++ b/Scripts/pickup_notification.gd @@ -33,7 +33,7 @@ func _process(delta: float) -> void: func set_card(card: Card) -> void: - $HBoxContainer/Label.text = card.display_name + $HBoxContainer/Label.text = tr(card.display_name) match(card.rarity): Data.Rarity.COMMON: style.bg_color = common_background diff --git a/Towers/Ascension/tower_stats.tres b/Towers/Ascension/tower_stats.tres index f92ae27..9c8f96c 100644 --- a/Towers/Ascension/tower_stats.tres +++ b/Towers/Ascension/tower_stats.tres @@ -26,5 +26,5 @@ script = ExtResource("2_bpl71") target_type = 2 energy_type = 0 attributes = Array[ExtResource("1_tiqmf")]([SubResource("Resource_tiqmf"), SubResource("Resource_bpl71"), SubResource("Resource_imnjp")]) -text = "Grants access to a stable high canopy" +text = "DESC_TOWER_PLATFORM_DASH" metadata/_custom_type_script = "uid://dg7gxxqfqxcmc" diff --git a/Towers/Assault/tower_stats.tres b/Towers/Assault/tower_stats.tres index a0cee27..baa5967 100644 --- a/Towers/Assault/tower_stats.tres +++ b/Towers/Assault/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_7wr4x") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_qgv2j")]([SubResource("Resource_bukji"), SubResource("Resource_2e75s"), SubResource("Resource_1vpnf")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m" +text = "DESC_TOWER_BASIC_GUN" diff --git a/Towers/Blowdart/tower_stats.tres b/Towers/Blowdart/tower_stats.tres index c35560f..553a4b3 100644 --- a/Towers/Blowdart/tower_stats.tres +++ b/Towers/Blowdart/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_2k5i0") target_type = 3 energy_type = 0 attributes = Array[ExtResource("1_otqsh")]([SubResource("Resource_1txa7"), SubResource("Resource_46kv2"), SubResource("Resource_gb76x")]) -text = "Fires every /Fire Delay\\s, applying one stack of Poison at a range of /Range\\m" +text = "DESC_TOWER_POISON" diff --git a/Towers/BombLauncher/tower_stats.tres b/Towers/BombLauncher/tower_stats.tres index 6ee7f89..2368a89 100644 --- a/Towers/BombLauncher/tower_stats.tres +++ b/Towers/BombLauncher/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_1vuma") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_eglp5")]([SubResource("Resource_yb48y"), SubResource("Resource_ewwvw"), SubResource("Resource_qu5dv")]) -text = "Launch a bomb that deals /Damage\\ damage every /Fire Delay\\ seconds" +text = "DESC_TOWER_BOMB" diff --git a/Towers/Fireball/tower_stats.tres b/Towers/Fireball/tower_stats.tres index 40c9d29..0e4c4dc 100644 --- a/Towers/Fireball/tower_stats.tres +++ b/Towers/Fireball/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_nconk") target_type = 3 energy_type = 0 attributes = Array[ExtResource("1_wvk31")]([SubResource("Resource_68ba3"), SubResource("Resource_gogvm"), SubResource("Resource_pswb4")]) -text = "Conjures a fireball every /Fire Delay\\s that deals /Damage\\ and apply Burning to enemies caught in its blast" +text = "DESC_TOWER_FIREBALL" diff --git a/Towers/Flamethrower/tower_stats.tres b/Towers/Flamethrower/tower_stats.tres index 5f82089..8a06433 100644 --- a/Towers/Flamethrower/tower_stats.tres +++ b/Towers/Flamethrower/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_wptab") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_ikp33")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk")]) -text = "Applies burning to enemies in front of it" +text = "DESC_TOWER_FLAMETHROWER" diff --git a/Towers/Gatling/tower_stats.tres b/Towers/Gatling/tower_stats.tres index 899330d..9be74bf 100644 --- a/Towers/Gatling/tower_stats.tres +++ b/Towers/Gatling/tower_stats.tres @@ -33,6 +33,4 @@ script = ExtResource("2_ky46y") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_w20qq")]([SubResource("Resource_oayfg"), SubResource("Resource_fekle"), SubResource("Resource_ud8xi"), SubResource("Resource_cvkxf"), SubResource("Resource_pivwn")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m - -While attacking the same target, gradually accelerates to /Speed Multiplier\\x the fire rate over /Speed Time\\s" +text = "DESC_TOWER_ACCEL" diff --git a/Towers/GlueLauncher/tower_stats.tres b/Towers/GlueLauncher/tower_stats.tres index dc32e15..2d932d1 100644 --- a/Towers/GlueLauncher/tower_stats.tres +++ b/Towers/GlueLauncher/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_226sm") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_ytycf")]([SubResource("Resource_gbocu"), SubResource("Resource_6a2im"), SubResource("Resource_7npe0")]) -text = "Fires every /Fire Delay\\s, making the target Sticky at a range of /Range\\m" +text = "DESC_TOWER_GLUE" diff --git a/Towers/Icicle/tower_stats.tres b/Towers/Icicle/tower_stats.tres index 26e4a8e..7ba1b1b 100644 --- a/Towers/Icicle/tower_stats.tres +++ b/Towers/Icicle/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_dorn5") target_type = 3 energy_type = 0 attributes = Array[ExtResource("1_wgjcy")]([SubResource("Resource_68ba3"), SubResource("Resource_gogvm"), SubResource("Resource_pswb4")]) -text = "Conjures an icicle every /Fire Delay\\s that deals /Damage\\ and applies Cold to enemies caught in its blast" +text = "DESC_TOWER_ICE_SPIKE" diff --git a/Towers/Overclock/tower_stats.tres b/Towers/Overclock/tower_stats.tres index 5efcf41..10b337f 100644 --- a/Towers/Overclock/tower_stats.tres +++ b/Towers/Overclock/tower_stats.tres @@ -26,5 +26,5 @@ script = ExtResource("2_fax6y") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_0swcp")]([SubResource("Resource_0swcp"), SubResource("Resource_fax6y"), SubResource("Resource_v0e26")]) -text = "Speeds up the fire rate of towers within /Range\\m by 10%" +text = "DESC_TOWER_SPEED_INCREASER" metadata/_custom_type_script = "uid://dg7gxxqfqxcmc" diff --git a/Towers/Reactor/tower_stats.tres b/Towers/Reactor/tower_stats.tres index 6c4e93e..e373699 100644 --- a/Towers/Reactor/tower_stats.tres +++ b/Towers/Reactor/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_8w61k") target_type = 3 energy_type = 0 attributes = Array[ExtResource("1_peekg")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk")]) -text = "Slowly applies Radioactive to enemies around itself at a range of /Range\\m" +text = "DESC_TOWER_RADIATION" diff --git a/Towers/Refrigerator/tower_stats.tres b/Towers/Refrigerator/tower_stats.tres index d964153..9bbaff3 100644 --- a/Towers/Refrigerator/tower_stats.tres +++ b/Towers/Refrigerator/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_w4q6a") target_type = 1 energy_type = 0 attributes = Array[ExtResource("1_wa26m")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk")]) -text = "Applies Cold to enemies around itself" +text = "DESC_TOWER_FREEZER" diff --git a/Towers/RocketLauncher/tower_stats.tres b/Towers/RocketLauncher/tower_stats.tres index 3c6277b..0cb6249 100644 --- a/Towers/RocketLauncher/tower_stats.tres +++ b/Towers/RocketLauncher/tower_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_lag26") target_type = 2 energy_type = 0 attributes = Array[ExtResource("1_jajj0")]([SubResource("Resource_4fjm2"), SubResource("Resource_uwj4j"), SubResource("Resource_6qv5v"), SubResource("Resource_y1rtq")]) -text = "Every /Fire Delay\\s, fires a homing rocket at up to /Target Limit\\ flying enemies up to /Range\\m away that deal /Damage\\ damage" +text = "DESC_TOWER_ROCKET" diff --git a/Towers/Sniper/tower_stats.tres b/Towers/Sniper/tower_stats.tres index 4b94b60..1fb8da3 100644 --- a/Towers/Sniper/tower_stats.tres +++ b/Towers/Sniper/tower_stats.tres @@ -23,4 +23,4 @@ script = ExtResource("2_5j62t") target_type = 3 energy_type = 0 attributes = Array[ExtResource("1_5wjgg")]([SubResource("Resource_1ct8q"), SubResource("Resource_erx05"), SubResource("Resource_vfpmb")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m" +text = "DESC_TOWER_SNIPER" diff --git a/UI/EnemyCard/enemy_card_ui.gd b/UI/EnemyCard/enemy_card_ui.gd index 458a2a2..8beb27b 100644 --- a/UI/EnemyCard/enemy_card_ui.gd +++ b/UI/EnemyCard/enemy_card_ui.gd @@ -8,7 +8,7 @@ extends Control func set_enemy(enemy: EnemyCard) -> void: - enemy_name.text = enemy.enemy.title + enemy_name.text = tr(enemy.enemy.title) enemy_rarity.texture.region = Rect2(0.0, 92.0 - (23.0 * int(enemy.rarity)), 124.0, 23.0) enemy_tex.texture = enemy.enemy.icon if enemy.rarity == Data.Rarity.COMMON: diff --git a/Weapons/Ascension/weapon_stats.tres b/Weapons/Ascension/weapon_stats.tres index d3087d6..a9d2488 100644 --- a/Weapons/Ascension/weapon_stats.tres +++ b/Weapons/Ascension/weapon_stats.tres @@ -26,5 +26,5 @@ script = ExtResource("2_hwijr") target_type = 2 energy_type = 1 attributes = Array[ExtResource("1_c5ghd")]([SubResource("Resource_c5ghd"), SubResource("Resource_hwijr"), SubResource("Resource_5pac0")]) -text = "Send yourself flying" +text = "DESC_WEAPON_PLATFORM_DASH" metadata/_custom_type_script = "uid://dg7gxxqfqxcmc" diff --git a/Weapons/Assault/weapon_stats.tres b/Weapons/Assault/weapon_stats.tres index ead4673..cf5673f 100644 --- a/Weapons/Assault/weapon_stats.tres +++ b/Weapons/Assault/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_k26ta") target_type = 0 energy_type = 2 attributes = Array[ExtResource("1_rbqj6")]([SubResource("Resource_bcrtt"), SubResource("Resource_llper"), SubResource("Resource_7i2dt"), SubResource("Resource_8cirl")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m" +text = "DESC_WEAPON_BASIC_GUN" diff --git a/Weapons/Blowdart/weapon_stats.tres b/Weapons/Blowdart/weapon_stats.tres index 6e306ec..e30cc5b 100644 --- a/Weapons/Blowdart/weapon_stats.tres +++ b/Weapons/Blowdart/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_lbj0i") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_3nyhi")]([SubResource("Resource_1txa7"), SubResource("Resource_46kv2"), SubResource("Resource_gb76x"), SubResource("Resource_dtjel")]) -text = "Fires every /Fire Delay\\s, applying one stack of Poison at a range of /Range\\m" +text = "DESC_WEAPON_POISON" diff --git a/Weapons/BombLauncher/weapon_stats.tres b/Weapons/BombLauncher/weapon_stats.tres index 621782d..81ba193 100644 --- a/Weapons/BombLauncher/weapon_stats.tres +++ b/Weapons/BombLauncher/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_fe8lx") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_vg7y2")]([SubResource("Resource_yb48y"), SubResource("Resource_ewwvw"), SubResource("Resource_qu5dv"), SubResource("Resource_67t30")]) -text = "Launch a bomb that deals /Damage\\ damage every /Fire Delay\\ seconds" +text = "DESC_WEAPON_BOMB" diff --git a/Weapons/Fireball/weapon_stats.tres b/Weapons/Fireball/weapon_stats.tres index db236f6..3ba3577 100644 --- a/Weapons/Fireball/weapon_stats.tres +++ b/Weapons/Fireball/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_yto3f") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_kqy5w")]([SubResource("Resource_68ba3"), SubResource("Resource_gogvm"), SubResource("Resource_pswb4"), SubResource("Resource_y1gjj")]) -text = "Conjure a fireball every /Fire Delay\\s that can be thrown to deal /Damage\\ and apply Burning to enemies caught in its blast" +text = "DESC_WEAPON_FIREBALL" diff --git a/Weapons/Flamethrower/weapon_stats.tres b/Weapons/Flamethrower/weapon_stats.tres index 84153ef..6095121 100644 --- a/Weapons/Flamethrower/weapon_stats.tres +++ b/Weapons/Flamethrower/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_drgp3") target_type = 0 energy_type = 2 attributes = Array[ExtResource("1_xqcf3")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk"), SubResource("Resource_rjpjf")]) -text = "Hold to apply Burning to enemies in front of you" +text = "DESC_WEAPON_FLAMETHROWER" diff --git a/Weapons/Gatling/weapon_stats.tres b/Weapons/Gatling/weapon_stats.tres index f8cde76..71723e7 100644 --- a/Weapons/Gatling/weapon_stats.tres +++ b/Weapons/Gatling/weapon_stats.tres @@ -38,6 +38,4 @@ script = ExtResource("2_y36gr") target_type = 0 energy_type = 2 attributes = Array[ExtResource("1_7oh83")]([SubResource("Resource_fi7tc"), SubResource("Resource_r6h5d"), SubResource("Resource_gwg1i"), SubResource("Resource_ogk1x"), SubResource("Resource_wdp3h"), SubResource("Resource_d1lvi")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m - -While held, gradually accelerates to /Speed Multiplier\\x the fire rate over /Speed Time\\s" +text = "DESC_WEAPON_ACCEL" diff --git a/Weapons/GlueLauncher/weapon_stats.tres b/Weapons/GlueLauncher/weapon_stats.tres index 030262f..a62b13a 100644 --- a/Weapons/GlueLauncher/weapon_stats.tres +++ b/Weapons/GlueLauncher/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_nlx26") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_8ysxs")]([SubResource("Resource_gbocu"), SubResource("Resource_6a2im"), SubResource("Resource_7npe0"), SubResource("Resource_o1b5x")]) -text = "Fires every /Fire Delay\\s, making the target Sticky at a range of /Range\\m" +text = "DESC_WEAPON_GLUE" diff --git a/Weapons/Icicle/weapon_stats.tres b/Weapons/Icicle/weapon_stats.tres index 5cfd7a4..46596c4 100644 --- a/Weapons/Icicle/weapon_stats.tres +++ b/Weapons/Icicle/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_5m6w7") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_nkpmf")]([SubResource("Resource_68ba3"), SubResource("Resource_gogvm"), SubResource("Resource_pswb4"), SubResource("Resource_cfu7u")]) -text = "Conjure an icicle every /Fire Delay\\s that can be thrown to deal /Damage\\ and apply Cold to enemies caught in its blast" +text = "DESC_WEAPON_ICE_SPIKE" diff --git a/Weapons/Overclock/weapon_stats.tres b/Weapons/Overclock/weapon_stats.tres index e8d8d1f..f258e71 100644 --- a/Weapons/Overclock/weapon_stats.tres +++ b/Weapons/Overclock/weapon_stats.tres @@ -38,5 +38,5 @@ script = ExtResource("2_rl1ek") target_type = 1 energy_type = 2 attributes = Array[ExtResource("1_m84e5")]([SubResource("Resource_m84e5"), SubResource("Resource_rl1ek"), SubResource("Resource_gglou"), SubResource("Resource_0g051"), SubResource("Resource_uq2yv")]) -text = "Fire a machine-energizing pellet every /Fire Delay\\ seconds that speeds up tower fire rate by 35% for /EffectDuration\\ seconds at a range of /Range\\m" +text = "DESC_WEAPON_SPEED_INCREASER" metadata/_custom_type_script = "uid://dg7gxxqfqxcmc" diff --git a/Weapons/Reactor/weapon_stats.tres b/Weapons/Reactor/weapon_stats.tres index 01bff92..4a41bcb 100644 --- a/Weapons/Reactor/weapon_stats.tres +++ b/Weapons/Reactor/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_ahbcx") target_type = 0 energy_type = 2 attributes = Array[ExtResource("1_b6ubt")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk"), SubResource("Resource_b4805")]) -text = "Hold to apply Radioactive to enemies in front of you" +text = "DESC_WEAPON_RADIATION" diff --git a/Weapons/Refrigerator/weapon_stats.tres b/Weapons/Refrigerator/weapon_stats.tres index 3e613fb..f6b9a0f 100644 --- a/Weapons/Refrigerator/weapon_stats.tres +++ b/Weapons/Refrigerator/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_wny82") target_type = 0 energy_type = 2 attributes = Array[ExtResource("1_dxffl")]([SubResource("Resource_j28f4"), SubResource("Resource_likes"), SubResource("Resource_b65mk"), SubResource("Resource_voaa5")]) -text = "Hold to apply Cold to enemies in front of you" +text = "DESC_WEAPON_FREEZER" diff --git a/Weapons/RocketLauncher/weapon_stats.tres b/Weapons/RocketLauncher/weapon_stats.tres index 3823082..8f60e7f 100644 --- a/Weapons/RocketLauncher/weapon_stats.tres +++ b/Weapons/RocketLauncher/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_ow0r7") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_5gy7w")]([SubResource("Resource_4fjm2"), SubResource("Resource_uwj4j"), SubResource("Resource_6qv5v"), SubResource("Resource_ymyed")]) -text = "Every /Fire Delay\\s, hold to target up to /Target Limit\\ enemies and release to fire homing rockets that deal /Damage\\ damage" +text = "DESC_WEAPON_ROCKET" diff --git a/Weapons/Sniper/weapon_stats.tres b/Weapons/Sniper/weapon_stats.tres index d430cf0..6f376ee 100644 --- a/Weapons/Sniper/weapon_stats.tres +++ b/Weapons/Sniper/weapon_stats.tres @@ -28,4 +28,4 @@ script = ExtResource("2_qyvv8") target_type = 0 energy_type = 1 attributes = Array[ExtResource("1_aub52")]([SubResource("Resource_58kde"), SubResource("Resource_jl4jv"), SubResource("Resource_28kyj"), SubResource("Resource_7pvmq")]) -text = "Fires a shot every /Fire Delay\\ seconds dealing /Damage\\ damage at a range of /Range\\m" +text = "DESC_WEAPON_SNIPER" diff --git a/Worlds/GreenPlanet/Levels/Bridge/bridge.tscn b/Worlds/GreenPlanet/Levels/Bridge/bridge.tscn index c368027..0f86735 100644 --- a/Worlds/GreenPlanet/Levels/Bridge/bridge.tscn +++ b/Worlds/GreenPlanet/Levels/Bridge/bridge.tscn @@ -1,14 +1,11 @@ -[gd_scene load_steps=38 format=3 uid="uid://y1qa1g3ic8sp"] +[gd_scene load_steps=33 format=3 uid="uid://y1qa1g3ic8sp"] [ext_resource type="Script" uid="uid://cvejbo3srx8py" path="res://Scripts/level.gd" id="1_ws6nn"] [ext_resource type="PackedScene" uid="uid://d2yv447trxkwt" path="res://Scenes/enemy_spawner.tscn" id="3_5imwp"] [ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="3_6od8s"] -[ext_resource type="Texture2D" uid="uid://cdnhe2mi5c5ln" path="res://Assets/Textures/dead_eye_dog.png" id="3_uh5sr"] -[ext_resource type="Texture2D" uid="uid://g00wwrlxxdc5" path="res://Assets/Textures/icon_eye_dog.png" id="4_g08yk"] -[ext_resource type="PackedScene" uid="uid://bvq6tbkuv2mfp" path="res://Enemies/EyeDog/eye_dog.tscn" id="5_asmpj"] +[ext_resource type="Resource" uid="uid://8eba45hql7bo" path="res://Enemies/EyeDog/eye_dog.tres" id="3_j6d65"] [ext_resource type="Resource" uid="uid://dxi17xvdlhkvc" path="res://Enemies/ElderEyeDog/elder_eye_dog.tres" id="5_j6d65"] [ext_resource type="Resource" uid="uid://cvehqh4tt28g7" path="res://Enemies/BabyEyeDog/baby_eye_dog.tres" id="6_ks6qx"] -[ext_resource type="Texture2D" uid="uid://dj13g1w14mekw" path="res://Assets/Textures/eye_dog.png" id="6_vrxvq"] [ext_resource type="Resource" uid="uid://bffhb5krs5elm" path="res://Enemies/Crystalisk/crystalisk.tres" id="9_4gdda"] [ext_resource type="PackedScene" uid="uid://1b2ikdanl66b" path="res://Scenes/CardPrinter/card_printer.tscn" id="9_r25gu"] [ext_resource type="Script" uid="uid://cxwtuxytavfu5" path="res://Scripts/enemy_goal.gd" id="9_s3rd7"] @@ -24,36 +21,6 @@ [ext_resource type="Texture2D" uid="uid://dqrfgw65d0sq8" path="res://Assets/Textures/bridge_map.png" id="28_6od8s"] [ext_resource type="PackedScene" uid="uid://ca174636iktc6" path="res://Worlds/GreenPlanet/Levels/Bridge/bridge.glb" id="30_ttr7n"] -[sub_resource type="AtlasTexture" id="AtlasTexture_p1iv6"] -resource_local_to_scene = true -atlas = ExtResource("6_vrxvq") -region = Rect2(0, 0, 32, 32) - -[sub_resource type="Resource" id="Resource_uvxyn"] -resource_local_to_scene = true -script = ExtResource("3_6od8s") -title = "Eye Dog" -target_type = 1 -scene = ExtResource("5_asmpj") -icon = ExtResource("4_g08yk") -death_sprite = ExtResource("3_uh5sr") -sprite = SubResource("AtlasTexture_p1iv6") -spawn_power = 10 -health = 180 -penalty = 10 -movement_speed = 1.5 -spawn_cooldown = 1.2 -common_group = 6 -common_cost = 1 -uncommon_group = 10 -uncommon_cost = 2 -rare_group = 16 -rare_cost = 3 -epic_group = 22 -epic_cost = 5 -legendary_group = 28 -legendary_cost = 6 - [sub_resource type="Curve3D" id="Curve3D_3rdl2"] _data = { "points": PackedVector3Array(0, 0, 0, 0, 0, 0, 12.3765, 1.00006, -13.0874, 0, 0, 0, 0, 0, 0, -13.1528, 5.17887, -14.4739), @@ -268,7 +235,7 @@ size = Vector3(70.0478, 1, 73.4615) [node name="Bridge" type="Node3D" node_paths=PackedStringArray("tower_path", "player_spawns", "enemy_spawns", "enemy_goals", "corpses", "flow_field", "cinematic_cam", "printer", "shop")] script = ExtResource("1_ws6nn") -enemy_pool = Array[ExtResource("3_6od8s")]([SubResource("Resource_uvxyn"), ExtResource("9_4gdda"), ExtResource("5_j6d65"), ExtResource("6_ks6qx")]) +enemy_pool = Array[ExtResource("3_6od8s")]([ExtResource("3_j6d65"), ExtResource("9_4gdda"), ExtResource("5_j6d65"), ExtResource("6_ks6qx")]) tower_path = NodePath("Towers") player_spawns = [NodePath("PlayerSpawnLocations/PlayerSpawn1"), NodePath("PlayerSpawnLocations/PlayerSpawn2"), NodePath("PlayerSpawnLocations/PlayerSpawn3"), NodePath("PlayerSpawnLocations/PlayerSpawn4")] enemy_spawns = [NodePath("GroundSpawn"), NodePath("GroundSpawn2"), NodePath("GroundSpawn3"), NodePath("GroundSpawn4"), NodePath("GroundSpawn5"), NodePath("AirSpawn")] diff --git a/choose_card_screen.gd b/choose_card_screen.gd index e7f792c..39282d3 100644 --- a/choose_card_screen.gd +++ b/choose_card_screen.gd @@ -15,7 +15,7 @@ func add_cards(cards: Array[Card]) -> void: var x: int = 0 for card: Card in cards: var button: Button = Button.new() - button.text = card.display_name + button.text = tr(card.display_name) button.pressed.connect(choose_card.bind(x)) choices.append(card) choice_buttons.add_child(button) @@ -25,13 +25,13 @@ func add_cards(cards: Array[Card]) -> void: func choose_card(choice: int) -> void: chosen_card = choices[choice] - card_name_label.text = chosen_card.display_name + card_name_label.text = tr(chosen_card.display_name) choose_side(side_a) func choose_side(side_a_chosen: bool) -> void: side_a = side_a_chosen - card_description_label.text = chosen_card.tower_stats.text if side_a else chosen_card.weapon_stats.text + card_description_label.text = tr(chosen_card.tower_stats.text) if side_a else tr(chosen_card.weapon_stats.text) func _on_confirm_button_pressed() -> void: diff --git a/choose_card_screen.tscn b/choose_card_screen.tscn index c96ee2b..24333fe 100644 --- a/choose_card_screen.tscn +++ b/choose_card_screen.tscn @@ -12,7 +12,7 @@ grow_vertical = 2 script = ExtResource("1_y4oar") choice_buttons = NodePath("PanelContainer/Content/HBoxContainer/ChoicesVBox") card_name_label = NodePath("PanelContainer/Content/HBoxContainer/VBoxContainer/NameLabel") -card_description_label = NodePath("PanelContainer/Content/HBoxContainer/DescriptionVBox/RichTextLabel") +card_description_label = NodePath("PanelContainer/Content/HBoxContainer/DescriptionVBox/DescriptionText") [node name="PanelContainer" type="PanelContainer" parent="."] layout_mode = 1 @@ -82,7 +82,8 @@ size_flags_horizontal = 3 layout_mode = 2 text = "LABEL_CARD_DESCRIPTION" -[node name="RichTextLabel" type="RichTextLabel" parent="PanelContainer/Content/HBoxContainer/DescriptionVBox"] +[node name="DescriptionText" type="RichTextLabel" parent="PanelContainer/Content/HBoxContainer/DescriptionVBox"] +auto_translate_mode = 2 layout_mode = 2 size_flags_vertical = 3 text = "a long ass example description of a card that goes into honestly way too much detail but at least if we can support a lot of text at a good size then we dont have to worry about really complicated cards fucking up our UI later in developement if we end up needing to explain a lot" diff --git a/project.godot b/project.godot index d0d9596..4e86349 100644 --- a/project.godot +++ b/project.godot @@ -209,8 +209,7 @@ Pause={ [internationalization] -locale/translations=PackedStringArray("res://Locales/en.mo") -locale/translations_pot_files=PackedStringArray("res://Scenes/Menus/MainMenu/main_menu.tscn", "res://Scenes/Menus/PauseMenu/pause_menu.tscn", "res://Scenes/Menus/GameEndScreen/game_end_screen.tscn", "res://Scenes/Menus/CharacterSelect/character_select.tscn", "res://Scenes/Menus/audio_options.tscn", "res://Scenes/Menus/gameplay_options.tscn", "res://Scenes/Menus/graphics_options.tscn", "res://Scenes/Menus/keybind_options.tscn", "res://Scenes/UI/keybind_popup.tscn") +locale/translations_pot_files=PackedStringArray("res://Scenes/Menus/MainMenu/main_menu.tscn", "res://Scenes/Menus/PauseMenu/pause_menu.tscn", "res://Scenes/Menus/GameEndScreen/game_end_screen.tscn", "res://Scenes/Menus/CharacterSelect/character_select.tscn", "res://Scenes/Menus/audio_options.tscn", "res://Scenes/Menus/gameplay_options.tscn", "res://Scenes/Menus/graphics_options.tscn", "res://Scenes/Menus/keybind_options.tscn", "res://Scenes/UI/keybind_popup.tscn", "res://choose_card_screen.tscn", "res://Scenes/Menus/options_menu.tscn") pseudolocalization/double_vowels=true [layer_names]