feat: Implement the main game scene with manager initialization, comprehensive UI setup including a dynamic message bar, tile respawn logic, and core multiplayer integration.
This commit is contained in:
@@ -1123,6 +1123,24 @@ func _on_leaderboard_updated(sorted_scores: Array):
|
||||
})
|
||||
rpc("sync_leaderboard_data", player_data)
|
||||
|
||||
# Update player rank visuals for everyone (Client + Server)
|
||||
var all_players = get_tree().get_nodes_in_group("Players")
|
||||
var sorted_players = []
|
||||
for p in all_players:
|
||||
var peer_id = p.name.to_int()
|
||||
var score = goals_cycle_manager.get_player_score(peer_id) if goals_cycle_manager else 0
|
||||
sorted_players.append({"node": p, "score": score})
|
||||
|
||||
# Sort by score descending
|
||||
sorted_players.sort_custom(func(a, b): return a.score > b.score)
|
||||
|
||||
# Assign rank
|
||||
for i in range(sorted_players.size()):
|
||||
var p_node = sorted_players[i].node
|
||||
var rank = i + 1
|
||||
if p_node.has_method("update_rank_visuals"):
|
||||
p_node.update_rank_visuals(rank)
|
||||
|
||||
func _on_global_timer_updated(time_remaining: float):
|
||||
"""Update the global match timer display."""
|
||||
var global_timer_panel = get_node_or_null("GlobalMatchTimer")
|
||||
|
||||
Reference in New Issue
Block a user