This commit is contained in:
Marek Le
2026-05-09 23:37:26 +02:00
parent 6d28b04c12
commit 2d4002bd3f
263 changed files with 5250 additions and 4597 deletions

View File

@@ -1,237 +1,411 @@
[gd_scene format=3]
[gd_scene load_steps=3 format=3 uid="uid://b0hud00001"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ability_active"]
bg_color = Color(0.2, 0.2, 0.2, 0.8)
border_width_bottom = 2
border_width_left = 2
border_width_right = 2
border_width_top = 2
border_color = Color(0.8, 0.8, 0.8, 1)
[ext_resource type="Script" path="res://scenes/hud/hud.gd" id="1"]
[ext_resource type="Script" path="res://scenes/hud/minimap.gd" id="2"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ability_round"]
bg_color = Color(0.2, 0.2, 0.2, 0.8)
border_width_bottom = 2
border_width_left = 2
border_width_right = 2
border_width_top = 2
border_color = Color(0.8, 0.8, 0.8, 1)
corner_radius_top_left = 22
corner_radius_top_right = 22
corner_radius_bottom_right = 22
corner_radius_bottom_left = 22
[node name="HUD" type="CanvasLayer"]
script = ExtResource("1")
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_health_bg"]
bg_color = Color(0.3, 0.1, 0.1, 1)
[node name="VitalsPanel" type="PanelContainer" parent="."]
offset_left = 12.0
offset_top = 12.0
offset_right = 312.0
offset_bottom = 130.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_health_fill"]
bg_color = Color(0.2, 0.8, 0.2, 1)
[node name="VBox" type="VBoxContainer" parent="VitalsPanel"]
layout_mode = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_shield_bg"]
bg_color = Color(0.1, 0.1, 0.3, 1)
[node name="HpRow" type="HBoxContainer" parent="VitalsPanel/VBox"]
layout_mode = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_shield_fill"]
bg_color = Color(0.2, 0.5, 0.9, 1)
[node name="HUD" type="CanvasLayer" groups=["hud"]]
[node name="HealthBar" type="ProgressBar" parent="."]
offset_left = 10.0
offset_top = 10.0
offset_right = 210.0
offset_bottom = 30.0
theme_override_styles/background = SubResource("StyleBoxFlat_health_bg")
theme_override_styles/fill = SubResource("StyleBoxFlat_health_fill")
[node name="HpBar" type="ProgressBar" parent="VitalsPanel/VBox/HpRow"]
unique_name_in_owner = true
custom_minimum_size = Vector2(220, 18)
layout_mode = 2
max_value = 100.0
value = 100.0
show_percentage = false
[node name="HealthLabel" type="Label" parent="HealthBar"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 12
[node name="HpLabel" type="Label" parent="VitalsPanel/VBox/HpRow"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "100/100"
horizontal_alignment = 1
vertical_alignment = 1
[node name="ShieldBar" type="ProgressBar" parent="."]
offset_left = 10.0
offset_top = 35.0
offset_right = 210.0
offset_bottom = 55.0
theme_override_styles/background = SubResource("StyleBoxFlat_shield_bg")
theme_override_styles/fill = SubResource("StyleBoxFlat_shield_fill")
[node name="ShieldRow" type="HBoxContainer" parent="VitalsPanel/VBox"]
layout_mode = 2
[node name="ShieldBar" type="ProgressBar" parent="VitalsPanel/VBox/ShieldRow"]
unique_name_in_owner = true
custom_minimum_size = Vector2(220, 14)
layout_mode = 2
max_value = 100.0
value = 0.0
[node name="ShieldLabel" type="Label" parent="VitalsPanel/VBox/ShieldRow"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "0/0"
horizontal_alignment = 1
[node name="XpRow" type="HBoxContainer" parent="VitalsPanel/VBox"]
layout_mode = 2
[node name="LevelLabel" type="Label" parent="VitalsPanel/VBox/XpRow"]
unique_name_in_owner = true
layout_mode = 2
text = "Lv 1"
[node name="XpBar" type="ProgressBar" parent="VitalsPanel/VBox/XpRow"]
unique_name_in_owner = true
custom_minimum_size = Vector2(180, 12)
layout_mode = 2
size_flags_horizontal = 3
max_value = 50.0
value = 50.0
show_percentage = false
value = 0.0
[node name="ShieldLabel" type="Label" parent="ShieldBar"]
[node name="VillageRow" type="HBoxContainer" parent="VitalsPanel/VBox"]
layout_mode = 2
[node name="VillageLabelStatic" type="Label" parent="VitalsPanel/VBox/VillageRow"]
layout_mode = 2
text = "Village"
[node name="VillageBar" type="ProgressBar" parent="VitalsPanel/VBox/VillageRow"]
unique_name_in_owner = true
custom_minimum_size = Vector2(180, 12)
layout_mode = 2
size_flags_horizontal = 3
max_value = 1000.0
value = 1000.0
[node name="WaveBox" type="PanelContainer" parent="."]
anchor_left = 0.5
anchor_right = 0.5
offset_left = -120.0
offset_top = 12.0
offset_right = 120.0
offset_bottom = 64.0
[node name="VBox" type="VBoxContainer" parent="WaveBox"]
layout_mode = 2
[node name="WaveLabel" type="Label" parent="WaveBox/VBox"]
unique_name_in_owner = true
layout_mode = 2
horizontal_alignment = 1
text = "Wave 1"
theme_override_font_sizes/font_size = 18
[node name="WaveTimer" type="Label" parent="WaveBox/VBox"]
unique_name_in_owner = true
layout_mode = 2
horizontal_alignment = 1
text = "10:00"
[node name="MinimapPanel" type="PanelContainer" parent="."]
anchor_left = 1.0
anchor_right = 1.0
offset_left = -212.0
offset_top = 12.0
offset_right = -12.0
offset_bottom = 212.0
[node name="MinimapCanvas" type="Control" parent="MinimapPanel"]
unique_name_in_owner = true
layout_mode = 2
script = ExtResource("2")
world_size = 80.0
[node name="AbilityBox" type="HBoxContainer" parent="."]
unique_name_in_owner = true
anchor_left = 0.5
anchor_right = 0.5
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = -200.0
offset_top = -76.0
offset_right = 280.0
offset_bottom = -12.0
theme_override_constants/separation = 6
[node name="RoleIcon" type="Panel" parent="AbilityBox"]
unique_name_in_owner = true
custom_minimum_size = Vector2(56, 56)
layout_mode = 2
[node name="RoleLabel" type="Label" parent="AbilityBox/RoleIcon"]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
text = "D"
horizontal_alignment = 1
vertical_alignment = 1
theme_override_font_sizes/font_size = 28
[node name="A1" type="Button" parent="AbilityBox"]
custom_minimum_size = Vector2(56, 56)
layout_mode = 2
text = "1"
[node name="A2" type="Button" parent="AbilityBox"]
custom_minimum_size = Vector2(56, 56)
layout_mode = 2
text = "2"
[node name="A3" type="Button" parent="AbilityBox"]
custom_minimum_size = Vector2(56, 56)
layout_mode = 2
text = "3"
[node name="A4" type="Button" parent="AbilityBox"]
custom_minimum_size = Vector2(56, 56)
layout_mode = 2
text = "4"
[node name="ChatPanel" type="PanelContainer" parent="."]
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = 12.0
offset_top = -200.0
offset_right = 360.0
offset_bottom = -12.0
[node name="VBox" type="VBoxContainer" parent="ChatPanel"]
layout_mode = 2
[node name="ChatLog" type="RichTextLabel" parent="ChatPanel/VBox"]
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 140)
layout_mode = 2
bbcode_enabled = true
scroll_following = true
fit_content = true
[node name="ChatInput" type="LineEdit" parent="ChatPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
placeholder_text = "Press Y to chat, Enter to send"
[node name="DeathOverlay" type="Control" parent="."]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="Background" type="ColorRect" parent="DeathOverlay"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 12
text = "50/50"
color = Color(0.0, 0.0, 0.0, 0.5)
[node name="DeathLabel" type="Label" parent="DeathOverlay"]
unique_name_in_owner = true
anchor_left = 0.5
anchor_right = 0.5
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = -200.0
offset_top = -40.0
offset_right = 200.0
offset_bottom = 40.0
text = "Respawning..."
horizontal_alignment = 1
vertical_alignment = 1
theme_override_font_sizes/font_size = 32
[node name="RespawnTimer" type="Label" parent="."]
anchors_preset = 8
[node name="InventoryPanel" type="PanelContainer" parent="."]
unique_name_in_owner = true
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -50.0
offset_top = -30.0
offset_right = 50.0
offset_bottom = 30.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 48
horizontal_alignment = 1
vertical_alignment = 1
offset_left = -200.0
offset_top = -200.0
offset_right = 200.0
offset_bottom = 200.0
[node name="AbilityBar" type="HBoxContainer" parent="."]
anchors_preset = 7
[node name="VBox" type="VBoxContainer" parent="InventoryPanel"]
layout_mode = 2
[node name="Title" type="Label" parent="InventoryPanel/VBox"]
layout_mode = 2
text = "Inventory (I)"
horizontal_alignment = 1
[node name="InventoryList" type="VBoxContainer" parent="InventoryPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
[node name="CraftingPanel" type="PanelContainer" parent="."]
unique_name_in_owner = true
anchor_left = 0.5
anchor_top = 1.0
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -260.0
offset_top = -240.0
offset_right = 260.0
offset_bottom = 240.0
[node name="VBox" type="VBoxContainer" parent="CraftingPanel"]
layout_mode = 2
[node name="Title" type="Label" parent="CraftingPanel/VBox"]
layout_mode = 2
text = "Crafting (C)"
horizontal_alignment = 1
[node name="CraftingList" type="VBoxContainer" parent="CraftingPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
[node name="BuildPanel" type="PanelContainer" parent="."]
unique_name_in_owner = true
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = -130.0
offset_top = -60.0
offset_right = 130.0
offset_bottom = -10.0
grow_horizontal = 2
grow_vertical = 0
theme_override_constants/separation = 5
offset_left = 12.0
offset_top = -260.0
offset_right = 360.0
offset_bottom = -210.0
[node name="ClassIcon" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_round")
[node name="VBox" type="VBoxContainer" parent="BuildPanel"]
layout_mode = 2
[node name="Label" type="Label" parent="AbilityBar/ClassIcon"]
[node name="Title" type="Label" parent="BuildPanel/VBox"]
layout_mode = 2
text = "Build Mode (B)"
horizontal_alignment = 1
[node name="BuildList" type="HBoxContainer" parent="BuildPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
[node name="DialogPanel" type="PanelContainer" parent="."]
unique_name_in_owner = true
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -300.0
offset_top = -200.0
offset_right = 300.0
offset_bottom = 200.0
[node name="VBox" type="VBoxContainer" parent="DialogPanel"]
layout_mode = 2
[node name="DialogNpc" type="Label" parent="DialogPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
text = "NPC"
horizontal_alignment = 1
theme_override_font_sizes/font_size = 22
[node name="DialogLog" type="RichTextLabel" parent="DialogPanel/VBox"]
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 280)
layout_mode = 2
bbcode_enabled = true
scroll_following = true
fit_content = true
[node name="DialogInput" type="LineEdit" parent="DialogPanel/VBox"]
unique_name_in_owner = true
layout_mode = 2
placeholder_text = "Frage stellen, Enter senden"
[node name="MapPanel" type="Control" parent="."]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="Background" type="ColorRect" parent="MapPanel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 20
text = "D"
color = Color(0.0, 0.0, 0.0, 0.7)
[node name="MapCanvas" type="Control" parent="MapPanel"]
unique_name_in_owner = true
anchor_left = 0.5
anchor_right = 0.5
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = -300.0
offset_top = -300.0
offset_right = 300.0
offset_bottom = 300.0
script = ExtResource("2")
world_size = 200.0
draw_labels = true
[node name="PausePanel" type="PanelContainer" parent="."]
unique_name_in_owner = true
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -150.0
offset_top = -120.0
offset_right = 150.0
offset_bottom = 120.0
[node name="VBox" type="VBoxContainer" parent="PausePanel"]
layout_mode = 2
[node name="Title" type="Label" parent="PausePanel/VBox"]
layout_mode = 2
text = "Paused"
horizontal_alignment = 1
vertical_alignment = 1
theme_override_font_sizes/font_size = 28
[node name="Ability1" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_active")
[node name="Resume" type="Button" parent="PausePanel/VBox"]
layout_mode = 2
text = "Resume"
[node name="CooldownOverlay" type="ColorRect" parent="AbilityBar/Ability1"]
layout_mode = 1
[node name="QuitToMenu" type="Button" parent="PausePanel/VBox"]
layout_mode = 2
text = "Quit to Menu"
[node name="GameOverOverlay" type="Control" parent="."]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.6)
visible = false
[node name="Label" type="Label" parent="AbilityBar/Ability1"]
[node name="Background" type="ColorRect" parent="GameOverOverlay"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "1"
color = Color(0.2, 0.0, 0.0, 0.8)
[node name="VBox" type="VBoxContainer" parent="GameOverOverlay"]
anchor_left = 0.5
anchor_right = 0.5
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = -200.0
offset_top = -100.0
offset_right = 200.0
offset_bottom = 100.0
[node name="Title" type="Label" parent="GameOverOverlay/VBox"]
layout_mode = 2
text = "GAME OVER"
horizontal_alignment = 1
vertical_alignment = 1
theme_override_font_sizes/font_size = 48
[node name="Ability2" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_active")
[node name="Restart" type="Button" parent="GameOverOverlay/VBox"]
layout_mode = 2
text = "Back to Main Menu"
[node name="CooldownOverlay" type="ColorRect" parent="AbilityBar/Ability2"]
layout_mode = 1
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.6)
visible = false
[node name="Label" type="Label" parent="AbilityBar/Ability2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "2"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Ability3" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_active")
[node name="CooldownOverlay" type="ColorRect" parent="AbilityBar/Ability3"]
layout_mode = 1
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.6)
visible = false
[node name="Label" type="Label" parent="AbilityBar/Ability3"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "3"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Ability4" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_active")
[node name="CooldownOverlay" type="ColorRect" parent="AbilityBar/Ability4"]
layout_mode = 1
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.6)
visible = false
[node name="Label" type="Label" parent="AbilityBar/Ability4"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "4"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Ability5" type="Panel" parent="AbilityBar"]
custom_minimum_size = Vector2(45, 45)
theme_override_styles/panel = SubResource("StyleBoxFlat_ability_round")
[node name="CooldownOverlay" type="ColorRect" parent="AbilityBar/Ability5"]
layout_mode = 1
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.6)
visible = false
[node name="Label" type="Label" parent="AbilityBar/Ability5"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "P"
horizontal_alignment = 1
vertical_alignment = 1
[connection signal="pressed" from="PausePanel/VBox/Resume" to="." method="_on_resume_pressed"]
[connection signal="pressed" from="PausePanel/VBox/QuitToMenu" to="." method="_on_quit_pressed"]
[connection signal="pressed" from="GameOverOverlay/VBox/Restart" to="." method="_on_game_over_restart"]