feat: Implement PortalDoor functionality and integrate PortalModeManager for the Tekton Doors game mode.

This commit is contained in:
Yogi Wiguna
2026-03-02 12:17:36 +08:00
parent a7442bb1a6
commit 1425dff93e
5 changed files with 148 additions and 15 deletions
+7
View File
@@ -1345,6 +1345,13 @@ func start_movement_along_path(path: Array, clear_visual: bool = true):
if sng_manager.check_win_condition(name.to_int(), current_position):
sng_main.rpc("sync_game_end_stop_n_go", name.to_int())
# Tekton Doors Win Check
elif LobbyManager.game_mode == "Tekton Doors":
var main_node = get_tree().root.get_node_or_null("Main")
if main_node and main_node.portal_mode_manager:
if main_node.portal_mode_manager.check_win_condition(name.to_int(), current_position):
main_node.rpc("sync_game_end_portal_mode", name.to_int())
# FORCE SNAP: Update target visual position to the perfect grid center
# This ensures that when interpolation resumes (in _process), it pulls to the correct spot
target_visual_position = grid_to_world(current_position)