feat(game): refactor ball state and turn handling

* Replace `valid_end` with `is_foul` for invalid ball sinks
* Rename and centralize ball state tracking
* Add ball finalization and win-condition hooks
* Update turn switching to retain the player after valid sinks
* Apply negative points to reaped balls
* Add active-player indicator to the camera UI
* Emit active-player updates when the turn changes
This commit is contained in:
2026-08-12 22:14:03 -05:00
parent 09369d3dd4
commit c95cc511e6
9 changed files with 166 additions and 77 deletions

View File

@@ -22,6 +22,8 @@ func set_active_player_id(id: int) -> void:
push_warning("Server assigned active player: ", id)
current_turn_player_id = id
MessageBus.emit_local("update_active_lbl", null)
func reset() -> void:
multiplayer_synchronizer = MultiplayerSynchronizer.new()