overhaul bot
This commit is contained in:
@@ -140,7 +140,8 @@ func _initialize_player_scores():
|
||||
"""Initialize scores for all connected players to 0."""
|
||||
var all_players = get_tree().get_nodes_in_group("Players")
|
||||
for player in all_players:
|
||||
var peer_id = player.get_multiplayer_authority()
|
||||
# Use name.to_int() for ID because bots share authority 1 but have unique node names
|
||||
var peer_id = player.name.to_int()
|
||||
if not player_scores.has(peer_id):
|
||||
player_scores[peer_id] = 0
|
||||
_update_leaderboard()
|
||||
@@ -186,7 +187,8 @@ func on_goal_completed(player: Node, time_remaining: float):
|
||||
if not multiplayer.is_server():
|
||||
return
|
||||
|
||||
var peer_id = player.get_multiplayer_authority()
|
||||
# Use name.to_int() for ID because bots share authority 1
|
||||
var peer_id = player.name.to_int()
|
||||
|
||||
# Calculate score: base + time bonus
|
||||
var time_bonus = int(time_remaining * TIME_BONUS_MULTIPLIER)
|
||||
@@ -241,7 +243,8 @@ func _process_cycle_end_for_all_players():
|
||||
var all_players = get_tree().get_nodes_in_group("Players")
|
||||
|
||||
for player in all_players:
|
||||
var peer_id = player.get_multiplayer_authority()
|
||||
# Use name.to_int() for ID because bots share authority 1
|
||||
var peer_id = player.name.to_int()
|
||||
var match_score = _calculate_match_score(player)
|
||||
|
||||
if match_score > 0:
|
||||
@@ -297,7 +300,7 @@ func regenerate_goals_for_player(player: Node):
|
||||
player.goals = int_goals
|
||||
|
||||
# Use main scene's RPC which properly looks up player by ID on each client
|
||||
var peer_id = player.get_multiplayer_authority()
|
||||
var peer_id = player.name.to_int()
|
||||
if main_scene:
|
||||
main_scene.rpc("sync_player_goals", peer_id, int_goals)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user