feat: Implement the initial main game scene, including GridMap, comprehensive UI, and mobile touch controls.
This commit is contained in:
@@ -680,6 +680,15 @@ func add_player_character(peer_id: int, is_bot: bool = false):
|
||||
|
||||
GameStateManager.add_player(peer_id)
|
||||
|
||||
# Try to set name from LobbyManager data if available
|
||||
var lobby_players = LobbyManager.get_players()
|
||||
for p_data in lobby_players:
|
||||
if p_data.get("id") == peer_id:
|
||||
var p_name = p_data.get("name", "Player")
|
||||
player_character.display_name = p_name
|
||||
print("[Main] Set player %d name to %s from Lobby data" % [peer_id, p_name])
|
||||
break
|
||||
|
||||
if peer_id == multiplayer.get_unique_id():
|
||||
GameStateManager.local_player_character = player_character
|
||||
ui_manager.set_local_player(player_character)
|
||||
|
||||
+23
-9
@@ -1028,23 +1028,37 @@ grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
texture = ExtResource("9_6gcb6")
|
||||
|
||||
[node name="PlayerboardPanel2" type="PanelContainer" parent="." unique_id=1458381676]
|
||||
[node name="PlayeBoardPanelName" type="PanelContainer" parent="." unique_id=1458381676]
|
||||
material = SubResource("ShaderMaterial_j8jky")
|
||||
offset_left = 22.0
|
||||
offset_top = 116.559875
|
||||
offset_right = 241.46997
|
||||
offset_bottom = 156.22003
|
||||
offset_left = 44.0
|
||||
offset_top = 113.710526
|
||||
offset_right = 216.29385
|
||||
offset_bottom = 153.37068
|
||||
rotation = -0.10297442
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_playerboard")
|
||||
|
||||
[node name="PlayerName" type="Label" parent="." unique_id=254337877]
|
||||
anchors_preset = 4
|
||||
anchor_top = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = 50.718987
|
||||
offset_top = -244.58023
|
||||
offset_right = 133.719
|
||||
offset_bottom = -208.58023
|
||||
grow_vertical = 2
|
||||
rotation = -0.10297442
|
||||
theme_override_fonts/font = ExtResource("13_j8jky")
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "Guest"
|
||||
|
||||
[node name="PlayerBoardLabel" type="Label" parent="." unique_id=341385584]
|
||||
anchors_preset = 4
|
||||
anchor_top = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = 31.000004
|
||||
offset_top = -243.44012
|
||||
offset_right = 71.0
|
||||
offset_bottom = -207.44012
|
||||
offset_left = 170.71896
|
||||
offset_top = -258.02036
|
||||
offset_right = 210.71896
|
||||
offset_bottom = -222.02036
|
||||
grow_vertical = 2
|
||||
rotation = -0.10297442
|
||||
theme_override_fonts/font = ExtResource("13_j8jky")
|
||||
|
||||
@@ -161,6 +161,8 @@ func _ready():
|
||||
# Look up player's display name from LobbyManager
|
||||
var my_id = get_multiplayer_authority()
|
||||
|
||||
print("[Player] _ready for %s (Auth: %s). Current display_name: '%s'" % [name, my_id, display_name])
|
||||
|
||||
if is_bot or is_in_group("Bots"):
|
||||
# Bots get a unique name based on their Node Name (Bot ID)
|
||||
var bot_id = name.to_int()
|
||||
|
||||
Reference in New Issue
Block a user