feat: implement Tekton Doors game mode with arena setup, portal management, connection randomization, and game state timers.

This commit is contained in:
2026-02-26 04:25:09 +08:00
parent 551c820d5e
commit ef3d018040
6 changed files with 230 additions and 66 deletions
+4 -1
View File
@@ -232,6 +232,10 @@ func _check_and_refill_grid_if_needed(server_gridmap: Node):
break
if not has_items:
if LobbyManager.game_mode == "Tekton Doors":
# Tekton Doors handles its own wall-aware refill in PortalModeManager
return
print("[PlayerboardManager] Floor 1 empty! Respawning tiles with Scarcity...")
# Call randomize_floor on floor 1 using ScarcityController
# ScarcityController is a global class, so we can pass its static function as a Callable
@@ -250,7 +254,6 @@ func _check_and_refill_grid_if_needed(server_gridmap: Node):
main.rpc("sync_grid_item", x, 1, z, item)
func _force_sync_to_client(cell: Vector3i, server_item: int):
"""Force a sync of the specific cell and playerboard to the client who initiated the failed action."""
# Only meaningful if we are server