summaryrefslogtreecommitdiffstats
path: root/transition_manager.gd
diff options
context:
space:
mode:
authorJan Tuomi <jan@jantuomi.fi>2025-11-26 18:41:11 +0200
committerJan Tuomi <jan@jantuomi.fi>2025-11-26 18:41:11 +0200
commit194f6e369c9f31df6e6ab4b46c7423d031f26264 (patch)
treea6d748b1b8f48ae35d8c8f4e0edb552075d192ca /transition_manager.gd
parenta991d59e784cc0a44a63be5e8f8e98fe27b05224 (diff)
Improve shader
Diffstat (limited to 'transition_manager.gd')
-rw-r--r--transition_manager.gd62
1 files changed, 0 insertions, 62 deletions
diff --git a/transition_manager.gd b/transition_manager.gd
deleted file mode 100644
index 390f854..0000000
--- a/transition_manager.gd
+++ /dev/null
@@ -1,62 +0,0 @@
-class_name TransitionManager
-extends CanvasLayer
-
-var _transition_room: Node
-var _transition_door_name: Variant # String or null
-
-func room_transition(from_door: Door, to_room_path: String, door_name: Variant):
- var top: Top = get_tree().root.get_node("Top")
- # Do not transition if there is already a transition in process
- if _transition_room != null:
- #print_debug("Tried to transition to ", room_name, " but a transition was already in process")
- return
-
- if from_door:
- var player: Player = top.get_node("ActiveRoom").find_child("Player")
- player.set_forced_input(from_door.enter_towards)
-
- # Start animation
- # The animation calls _change_room at a specific time
- $AnimationPlayer.play("room_trans_start")
-
- var room = ResourceLoader.load(to_room_path)
- _transition_room = room.instantiate()
- _transition_door_name = door_name
-
- top.game_set(Top.SAVE_ACTIVE_ROOM_PATH, to_room_path)
- top.game_set(Top.SAVE_LAST_DOOR_NAME, door_name)
-
-func _transition_start():
- var top: Top = get_tree().root.get_node("Top")
- #print_debug("_transition_start")
-
- # If the room hasn't loaded yet, loop until it is
- while _transition_room == null:
- await get_tree().create_timer(0.1).timeout
-
- top.get_map().set_active_name(_transition_room.name)
- top.replace_active_room(_transition_room, _on_room_changed)
-
-func _on_room_changed():
- var top: Top = get_tree().root.get_node("Top")
- #print_debug("_on_room_changed")
- var room = top.get_node("ActiveRoom")
- var player: Player = room.find_child("Player")
- if _transition_door_name:
- var door: Door = room.find_child(_transition_door_name)
- player.position = door.position
- player.set_forced_input(door.exit_towards)
-
- $AnimationPlayer.play("room_trans_end")
- top.game_save()
-
-func _transition_end():
- var top: Top = get_tree().root.get_node("Top")
- #print_debug("_transition_end")
- _transition_room = null
- _transition_door_name = null
-
- var room = top.get_node("ActiveRoom")
- var player: Player = room.find_child("Player")
- if player:
- player.set_forced_input(null)