feat: Implement core game managers for power-ups, UI, goals, and player actions, and establish initial game scene and player.

This commit is contained in:
2025-12-17 03:51:15 +08:00
parent e41ffcfb67
commit 75eb398649
8 changed files with 216 additions and 56 deletions
+46 -18
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=26 format=3 uid="uid://dxn87yj8qnfpp"]
[gd_scene load_steps=27 format=3 uid="uid://dxn87yj8qnfpp"]
[ext_resource type="MeshLibrary" uid="uid://kcv6ans86ug7" path="res://addons/enhanced_gridmap/meshlibrary/default.tres" id="1_110wo"]
[ext_resource type="Script" uid="uid://co1ads72by6na" path="res://scenes/main.gd" id="1_xcpe3"]
@@ -30,6 +30,22 @@ texture = ExtResource("13_ahjgs")
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_s1l63"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_playerboard"]
bg_color = Color(0.08, 0.08, 0.12, 0.9)
border_color = Color(0.3, 0.3, 0.4, 0.8)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
corner_radius_top_left = 8
corner_radius_top_right = 8
corner_radius_bottom_right = 8
corner_radius_bottom_left = 8
content_margin_left = 8.0
content_margin_top = 8.0
content_margin_right = 8.0
content_margin_bottom = 8.0
[node name="Main" type="Node3D"]
script = ExtResource("1_xcpe3")
@@ -88,15 +104,26 @@ text = "Unique Peer ID"
horizontal_alignment = 1
vertical_alignment = 1
[node name="PlayerboardPanel" type="PanelContainer" parent="."]
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = 10.0
offset_top = -120.0
offset_right = 216.0
offset_bottom = 120.0
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_playerboard")
[node name="PlayerboardUI" type="GridContainer" parent="."]
clip_contents = true
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = 32.0
offset_top = -104.0
offset_right = 228.0
offset_bottom = 92.0
offset_left = 18.0
offset_top = -88.0
offset_right = 208.0
offset_bottom = 102.0
grow_vertical = 2
size_flags_horizontal = 3
columns = 5
@@ -1065,6 +1092,7 @@ environment = ExtResource("4_ky38j")
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="AllPlayerGoals" type="HBoxContainer" parent="."]
visible = false
y_sort_enabled = true
clip_contents = true
layout_direction = 2
@@ -9325,14 +9353,14 @@ layout_mode = 2
theme_override_constants/separation = 4
[node name="PowerUpBar" type="PanelContainer" parent="."]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -110.0
offset_top = 125.0
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = 18.0
offset_top = -115.0
offset_right = 110.0
offset_bottom = 161.0
grow_horizontal = 2
offset_bottom = -92.0
grow_vertical = 2
[node name="HBox" type="HBoxContainer" parent="PowerUpBar"]
layout_mode = 2
@@ -9340,23 +9368,23 @@ theme_override_constants/separation = 4
[node name="PowerLabel" type="Label" parent="PowerUpBar/HBox"]
layout_mode = 2
theme_override_font_sizes/font_size = 14
text = "POWER "
theme_override_font_sizes/font_size = 18
text = ""
[node name="Segment0" type="Panel" parent="PowerUpBar/HBox"]
custom_minimum_size = Vector2(36, 20)
custom_minimum_size = Vector2(20, 16)
layout_mode = 2
[node name="Segment1" type="Panel" parent="PowerUpBar/HBox"]
custom_minimum_size = Vector2(36, 20)
custom_minimum_size = Vector2(20, 16)
layout_mode = 2
[node name="Segment2" type="Panel" parent="PowerUpBar/HBox"]
custom_minimum_size = Vector2(36, 20)
custom_minimum_size = Vector2(20, 16)
layout_mode = 2
[node name="Segment3" type="Panel" parent="PowerUpBar/HBox"]
custom_minimum_size = Vector2(36, 20)
custom_minimum_size = Vector2(20, 16)
layout_mode = 2
[node name="LeaderboardPanel" type="PanelContainer" parent="."]