From 7b44fcc1ef95fdfcc6723f8e6a594012764a8cab Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Fri, 21 Nov 2025 13:11:52 +0200 Subject: Separate TransitionManager from Top --- door.gd | 4 +- esc_listener.gd | 4 +- player.gd | 1 - room.gd | 2 - room.gd.uid | 1 - room_main_menu.gd | 4 +- room_test1.tscn | 5 +-- room_test3.tscn | 1 - top.gd | 67 ++++-------------------------- top.tscn | 100 ++------------------------------------------- transition_manager.gd | 55 +++++++++++++++++++++++++ transition_manager.gd.uid | 1 + transition_manager.tscn | 101 ++++++++++++++++++++++++++++++++++++++++++++++ 13 files changed, 174 insertions(+), 172 deletions(-) delete mode 100644 room.gd delete mode 100644 room.gd.uid create mode 100644 transition_manager.gd create mode 100644 transition_manager.gd.uid create mode 100644 transition_manager.tscn diff --git a/door.gd b/door.gd index e8dc59d..ae05d39 100644 --- a/door.gd +++ b/door.gd @@ -2,7 +2,7 @@ class_name Door extends Area2D -@onready var top: Top = get_tree().root.get_node("Top") +@onready var transition_manager: TransitionManager = get_tree().root.get_node("Top/TransitionManager") var _target_room: Variant var _target_door: Variant @@ -30,7 +30,7 @@ func _get(property): func _on_body_entered(_player: Player) -> void: if not Engine.is_editor_hint(): - top.room_transition(self, _target_room, _target_door) + transition_manager.room_transition(self, _target_room, _target_door) func _get_property_list() -> Array[Dictionary]: var rooms: PackedStringArray = [] diff --git a/esc_listener.gd b/esc_listener.gd index a10d9d6..ecb68bd 100644 --- a/esc_listener.gd +++ b/esc_listener.gd @@ -1,7 +1,7 @@ extends Node -@onready var top: Top = get_tree().root.get_node("Top") +@onready var transition_manager: TransitionManager = get_tree().root.get_node("Top/TransitionManager") func _process(_delta: float) -> void: if Input.is_action_just_pressed("menu"): - top.room_transition(null, "res://room_main_menu.tscn", null) + transition_manager.room_transition(null, "res://room_main_menu.tscn", null) diff --git a/player.gd b/player.gd index 3d9addd..6c5d142 100644 --- a/player.gd +++ b/player.gd @@ -104,5 +104,4 @@ func set_forced_input(dir: Variant): forced_input_x = 0.0 gravity = 0.0 elif dir == "DROP": - velocity.y = 0.0 forced_input_x = 0.0 diff --git a/room.gd b/room.gd deleted file mode 100644 index e06ee5d..0000000 --- a/room.gd +++ /dev/null @@ -1,2 +0,0 @@ -class_name Room -extends Node2D diff --git a/room.gd.uid b/room.gd.uid deleted file mode 100644 index bd32f85..0000000 --- a/room.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://cbhily4o7e2r3 diff --git a/room_main_menu.gd b/room_main_menu.gd index fd595a5..5c25f9c 100644 --- a/room_main_menu.gd +++ b/room_main_menu.gd @@ -6,5 +6,5 @@ func _ready() -> void: $TestRoomButton.pressed.connect(_test_room_button_pressed) func _test_room_button_pressed(): - var top: Top = get_tree().root.get_node("Top") - top.room_transition(null, "res://room_test1.tscn", null) + var transition_manager: TransitionManager = get_tree().root.get_node("Top/TransitionManager") + transition_manager.room_transition(null, "res://room_test1.tscn", null) diff --git a/room_test1.tscn b/room_test1.tscn index 5c06f1a..979b442 100644 --- a/room_test1.tscn +++ b/room_test1.tscn @@ -1,6 +1,5 @@ -[gd_scene load_steps=10 format=4 uid="uid://cfj21o6wsd3hv"] +[gd_scene load_steps=9 format=4 uid="uid://cfj21o6wsd3hv"] -[ext_resource type="Script" uid="uid://cbhily4o7e2r3" path="res://room.gd" id="1_qglt1"] [ext_resource type="Texture2D" uid="uid://o0yy2jkyp0dy" path="res://assets/kenney_1-bit-platformer-pack/Tilemap/monochrome_tilemap_transparent_packed.png" id="1_ubxha"] [ext_resource type="PackedScene" uid="uid://coxnsharboouu" path="res://player.tscn" id="2_qglt1"] [ext_resource type="PackedScene" uid="uid://dfyvkc2qlcdac" path="res://game_camera.tscn" id="3_mrrx3"] @@ -442,8 +441,6 @@ sources/1 = SubResource("TileSetAtlasSource_0e48y") [node name="RoomTest1" type="Node2D"] process_mode = 1 -script = ExtResource("1_qglt1") -metadata/_custom_type_script = "uid://cbhily4o7e2r3" [node name="TileMapLayer" type="TileMapLayer" parent="."] tile_map_data = PackedByteArray("AAACAAYAAQAIAAQAAAADAAYAAQAIAAQAAAAEAAYAAQAIAAQAAAAFAAYAAQAIAAQAAAAGAAYAAQAIAAQAAAAHAAYAAQAIAAQAAAAIAAYAAQAIAAQAAAACAAcAAQAIAAUAAAACAAgAAQAIAAUAAAADAAgAAQAIAAUAAAAEAAgAAQAIAAUAAAAEAAkAAQAIAAUAAAAFAAkAAQAIAAUAAAAGAAkAAQAIAAUAAAAHAAkAAQAIAAUAAAAHAAgAAQAIAAUAAAAIAAgAAQAIAAUAAAAIAAcAAQAIAAUAAAAHAAcAAQAIAAUAAAAGAAcAAQAIAAUAAAAFAAcAAQAIAAUAAAAEAAcAAQAIAAUAAAADAAcAAQAIAAUAAAAFAAgAAQAIAAUAAAAGAAgAAQAIAAUAAAAJAAUAAQAHAAUAAAAJAAQAAQAHAAQAAAAKAAQAAQAIAAQAAAALAAQAAQAJAAQAAAALAAUAAQAJAAUAAAALAAYAAQAJAAUAAAALAAcAAQAJAAUAAAAMAAgAAQAIAAQAAAANAAgAAQAIAAQAAAALAAgAAQAIAAUAAAAKAAgAAQAIAAUAAAAKAAcAAQAIAAUAAAAKAAYAAQAIAAUAAAAKAAUAAQAIAAUAAAAJAAYAAQAIAAUAAAAJAAcAAQAIAAUAAAAJAAgAAQAIAAUAAAAJAAkAAQAIAAUAAAAIAAkAAQAIAAUAAAAKAAkAAQAIAAUAAAALAAkAAQAIAAUAAAAMAAkAAQAIAAUAAAAMAAcAAQASAAEAAAABAAUAAQAAAAAAAAABAAQAAQAAAAAAAAABAAMAAQAJAAYAAAABAAIAAQAJAAUAAAAAAAIAAQAIAAUAAAAAAAMAAQAIAAYAAAAAAAQAAQAAAAAAAAAAAAUAAQAAAAAAAAAAAAYAAQAHAAQAAAAAAAcAAQAHAAUAAAABAAYAAQAIAAQAAAABAAcAAQAIAAUAAAABAAgAAQAIAAUAAAABAAkAAQAIAAUAAAAAAAkAAQAHAAUAAAAAAAgAAQAHAAUAAAACAAkAAQAIAAUAAAADAAkAAQAIAAUAAAAOAAYAAQALAAMAAAAOAAgAAQAIAAQAAAAPAAkAAQAIAAUAAAAKAAMAAQAOAAEAAAAKAAIAAQAOAAAAAAAHAAUAAQASAAAAAAAEAAEAAQALAAMAAAAEAAIAAQATAAAAAAAEAAMAAQATAAEAAAAPAAgAAQAIAAQAAAAQAAcAAQAAAAAAAAAQAAYAAQATAAEAAAAQAAUAAQAHAAYAAAAQAAQAAQAHAAQAAAAQAAMAAQAAAAAAAAAQAAIAAQAAAAAAAAAQAAEAAQAAAAAAAAAQAAAAAQAAAAAAAAANAAkAAQAIAAUAAAAOAAkAAQAIAAUAAAAQAAkAAQAIAAUAAAAQAAgAAQAIAAQAAAARAAkAAQAIAAUAAAARAAgAAQAIAAQAAAARAAcAAQAAAAAAAAARAAYAAQAAAAAAAAARAAUAAQAJAAYAAAARAAQAAQAJAAQAAAARAAMAAQANAAIAAAARAAIAAQAAAAAAAAARAAEAAQAAAAAAAAARAAAAAQAAAAAAAAASAAAAAQAAAAAAAAASAAEAAQAAAAAAAAASAAIAAQAAAAAAAAASAAMAAQAAAAAAAAASAAQAAQAAAAAAAAASAAUAAQAAAAAAAAASAAYAAQAAAAAAAAASAAcAAQAAAAAAAAASAAgAAQAJAAQAAAASAAkAAQAIAAUAAAASAAoAAQAIAAUAAAASAAsAAQAIAAUAAAARAAsAAQAIAAUAAAARAAoAAQAIAAUAAAAQAAoAAQAIAAUAAAAPAAoAAQAIAAUAAAAOAAoAAQAIAAUAAAANAAoAAQAIAAUAAAAMAAoAAQAIAAUAAAALAAoAAQAIAAUAAAAKAAoAAQAIAAUAAAAJAAoAAQAIAAUAAAAIAAoAAQAIAAUAAAAHAAoAAQAIAAUAAAAGAAoAAQAIAAUAAAAFAAoAAQAIAAUAAAAEAAoAAQAIAAUAAAADAAoAAQAIAAUAAAACAAoAAQAIAAUAAAABAAoAAQAIAAUAAAAAAAoAAQAHAAUAAAAAAAsAAQAHAAUAAAABAAsAAQAIAAUAAAACAAsAAQAIAAUAAAADAAsAAQAIAAUAAAAEAAsAAQAIAAUAAAAFAAsAAQAIAAUAAAAGAAsAAQAIAAUAAAAHAAsAAQAIAAUAAAAIAAsAAQAIAAUAAAAJAAsAAQAIAAUAAAAKAAsAAQAIAAUAAAALAAsAAQAIAAUAAAAMAAsAAQAIAAUAAAANAAsAAQAIAAUAAAAOAAsAAQAIAAUAAAAPAAsAAQAIAAUAAAAQAAsAAQAIAAUAAAAAAAEAAQAIAAUAAAAAAAAAAQAIAAUAAAAAAP//AQAIAAUAAAAAAP7/AQAIAAUAAAD///7/AQAIAAUAAAD/////AQAIAAUAAAD//wAAAQAIAAUAAAD//wEAAQAIAAUAAAD//wIAAQAIAAUAAAD//wMAAQAIAAYAAAD//wQAAQAAAAAAAAD//wUAAQAAAAAAAAD//wYAAQAAAAAAAAD//wcAAQAAAAAAAAD//wgAAQAAAAAAAAD+/wgAAQAAAAAAAAD+/wcAAQAAAAAAAAD+/wYAAQAAAAAAAAD+/wUAAQAAAAAAAAD+/wQAAQAAAAAAAAD+/wMAAQAIAAYAAAD+/wIAAQAIAAUAAAD+/wEAAQAIAAUAAAD+/wAAAQAIAAUAAAD+////AQAIAAUAAAD+/wkAAQAAAAAAAAD//wkAAQAAAAAAAAD//woAAQAAAAAAAAD//wsAAQAAAAAAAAD+/wsAAQAAAAAAAAD+/woAAQAAAAAAAAABAAEAAQAJAAUAAAABAAAAAQAJAAUAAAABAP//AQAJAAUAAAABAP7/AQAJAAUAAAABAP3/AQAJAAUAAAAQAP//AQAAAAAAAAAQAP7/AQAAAAAAAAAQAP3/AQAAAAAAAAARAP//AQAAAAAAAAAPAAcAAQASAAEAAAAQAPz/AQAAAAAAAAARAP7/AQAAAAAAAAAUAAcAAQAAAAAAAAAUAAYAAQAAAAAAAAAUAAUAAQAHAAYAAAAUAAQAAQAHAAUAAAAUAAMAAQAHAAUAAAAUAAEAAQAAAAAAAAAUAAIAAQAHAAQAAAATAAgAAQAAAAAAAAATAAkAAQAJAAQAAAATAAoAAQAIAAUAAAATAAsAAQAIAAUAAAAUAAsAAQAIAAUAAAAUAAoAAQAJAAQAAAAUAAkAAQAAAAAAAAAUAAgAAQAAAAAAAAAVAAkAAQAAAAAAAAAVAAoAAQAAAAAAAAAVAAsAAQAIAAQAAAAVAAgAAQAAAAAAAAAVAAcAAQAAAAAAAAAVAAYAAQAAAAAAAAAVAAUAAQAIAAYAAAAVAAQAAQAIAAUAAAAVAAMAAQAJAAUAAAAVAAIAAQAJAAQAAAAWAAQAAQAJAAQAAAAXAAUAAQAJAAQAAAAYAAYAAQAJAAQAAAAWAAUAAQAIAAUAAAAWAAYAAQAHAAUAAAAXAAYAAQAIAAUAAAAXAAcAAQAIAAUAAAAWAAcAAQAHAAYAAAAWAAgAAQAAAAAAAAAXAAgAAQAHAAYAAAAWAAkAAQAAAAAAAAAWAAoAAQAAAAAAAAAWAAsAAQAIAAQAAAAXAAsAAQAIAAQAAAAXAAoAAQAAAAAAAAAXAAkAAQAAAAAAAAAYAAkAAQAAAAAAAAAYAAgAAQAIAAYAAAAYAAcAAQAIAAUAAAAYAAoAAQAAAAAAAAAYAAsAAQAIAAQAAAAZAAcAAQAIAAQAAAAaAAcAAQAIAAQAAAAbAAcAAQAIAAQAAAAcAAcAAQAIAAQAAAAdAAcAAQAIAAQAAAAeAAcAAQAIAAQAAAAfAAcAAQAIAAQAAAAgAAcAAQAIAAQAAAAhAAcAAQAIAAQAAAAhAAgAAQAIAAYAAAAhAAkAAQAAAAAAAAAhAAoAAQAAAAAAAAAgAAoAAQAAAAAAAAAgAAkAAQAAAAAAAAAgAAgAAQAIAAYAAAAfAAgAAQAIAAYAAAAfAAkAAQAAAAAAAAAeAAkAAQAAAAAAAAAdAAgAAQAIAAYAAAAcAAgAAQAIAAYAAAAbAAgAAQAIAAYAAAAaAAgAAQAIAAYAAAAZAAgAAQAIAAYAAAAeAAgAAQAIAAYAAAAeAAoAAQAAAAAAAAAdAAoAAQAAAAAAAAAcAAoAAQAAAAAAAAAbAAoAAQAAAAAAAAAbAAkAAQAAAAAAAAAaAAkAAQAAAAAAAAAZAAkAAQAAAAAAAAAcAAkAAQAAAAAAAAAdAAkAAQAAAAAAAAAaAAoAAQAAAAAAAAAZAAoAAQAAAAAAAAAZAAsAAQAIAAQAAAAaAAsAAQAIAAQAAAAbAAsAAQAIAAQAAAAcAAsAAQAIAAQAAAAdAAsAAQAIAAQAAAAeAAsAAQAIAAQAAAAfAAsAAQAIAAQAAAAgAAsAAQAIAAQAAAAfAAoAAQAAAAAAAAAhAAsAAQAIAAQAAAAAAP3/AQAIAAUAAAD///3/AQAIAAUAAAD+//3/AQAIAAUAAAD9//3/AQAIAAUAAAD8//3/AQAIAAUAAAD+//7/AQAIAAUAAAD9//7/AQAIAAUAAAD8//7/AQAIAAUAAAD7//7/AQAIAAUAAAD7//3/AQAIAAUAAAD7////AQAIAAUAAAD8////AQAIAAUAAAD9////AQAIAAUAAAD9/wAAAQAIAAUAAAD9/wEAAQAIAAUAAAD9/wIAAQAIAAUAAAD8/wIAAQAIAAUAAAD7/wEAAQAIAAUAAAD7/wAAAQAIAAUAAAD8/wAAAQAIAAUAAAD8/wEAAQAIAAUAAAD7/wIAAQAIAAUAAAD7/wMAAQAIAAUAAAD8/wMAAQAIAAUAAAD9/wMAAQAIAAUAAAD9/wQAAQAJAAUAAAD8/wQAAQAIAAUAAAD7/wQAAQAIAAUAAAD7/wUAAQAIAAUAAAD8/wUAAQAIAAUAAAD9/wUAAQAJAAUAAAD9/wYAAQAJAAUAAAD8/wYAAQAIAAUAAAD7/wYAAQAIAAUAAAD7/wcAAQAIAAUAAAD8/wcAAQAIAAUAAAD9/wcAAQAJAAUAAAD9/wgAAQAJAAUAAAD8/wgAAQAIAAUAAAD7/wgAAQAIAAUAAAD7/wkAAQAIAAUAAAD8/wkAAQAIAAUAAAD9/wkAAQAJAAUAAAD9/woAAQAJAAUAAAD8/woAAQAIAAUAAAD7/woAAQAIAAUAAAD7/wsAAQAIAAUAAAD8/wsAAQAIAAUAAAD9/wsAAQAJAAUAAAAfAAYAAQAHAAwAAAAfAAUAAQAHAAsAAAAgAAUAAQAIAAsAAAAhAAUAAQAIAAsAAAAiAAcAAQAIAAUAAAAiAAYAAQAHAAUAAAAiAAUAAQAHAAUAAAAiAAQAAQAHAAUAAAAiAAMAAQAHAAUAAAAiAAIAAQAHAAUAAAAiAAEAAQAHAAUAAAAiAAgAAQAIAAYAAAAiAAkAAQAAAAAAAAAiAAoAAQAAAAAAAAAiAAsAAQAIAAQAAAAjAAsAAQAIAAQAAAAjAAoAAQAAAAAAAAAkAAoAAQAAAAAAAAAkAAkAAQAAAAAAAAAjAAkAAQAAAAAAAAAjAAgAAQAIAAYAAAAkAAsAAQAIAAQAAAAkAAgAAQAIAAYAAAAjAAcAAQAIAAUAAAAkAAcAAQAIAAUAAAAkAAYAAQAIAAUAAAAkAAUAAQAIAAUAAAAkAAQAAQAIAAUAAAAkAAMAAQAIAAUAAAAkAAIAAQAIAAUAAAAjAAIAAQAIAAUAAAAjAAEAAQAIAAUAAAAjAAMAAQAIAAUAAAAjAAQAAQAIAAUAAAAjAAUAAQAIAAUAAAAjAAYAAQAIAAUAAAAkAAEAAQAIAAUAAAAjAAAAAQAIAAUAAAAjAP//AQAHAAUAAAAjAP7/AQAHAAUAAAAjAP3/AQAHAAUAAAAjAPz/AQAHAAUAAAAjAPv/AQAHAAUAAAAjAPr/AQAHAAUAAAAkAPr/AQAIAAUAAAAkAPv/AQAIAAUAAAAkAPz/AQAIAAUAAAAkAP3/AQAIAAUAAAAkAP7/AQAIAAUAAAAkAP//AQAIAAUAAAAkAAAAAQAIAAUAAAAhAAMAAQAHAA0AAAAhAAIAAQAHAAsAAAAiAAAAAQAHAAQAAAAYAP//AQAHAA0AAAAZAP//AQAIAAsAAAAaAP//AQAIAAsAAAAbAP//AQAIAAsAAAAcAP//AQAIAAsAAAAdAP//AQAIAAsAAAAeAP//AQAIAAsAAAAfAP//AQAJAAsAAAAgAP//AQAAAAAAAAAcAP7/AQACAAIAAAAjAPn/AQAHAAUAAAAkAPn/AQAIAAUAAAAlAPn/AQAIAAUAAAAmAPn/AQAIAAUAAAAnAPn/AQAIAAUAAAAnAPr/AQAIAAUAAAAnAPv/AQAIAAUAAAAnAPz/AQAIAAUAAAAmAPz/AQAIAAUAAAAmAPv/AQAIAAUAAAAlAPv/AQAIAAUAAAAlAPr/AQAIAAUAAAAmAPr/AQAIAAUAAAAlAPz/AQAIAAUAAAAlAP3/AQAIAAUAAAAmAP3/AQAIAAUAAAAnAP3/AQAIAAUAAAAmAP7/AQAIAAUAAAAlAP7/AQAIAAUAAAAlAP//AQAIAAUAAAAmAP//AQAIAAUAAAAnAP//AQAIAAUAAAAnAP7/AQAIAAUAAAAnAAAAAQAIAAUAAAAmAAAAAQAIAAUAAAAlAAAAAQAIAAUAAAAlAAEAAQAIAAUAAAAmAAEAAQAIAAUAAAAmAAIAAQAIAAUAAAAnAAIAAQAIAAUAAAAnAAMAAQAIAAUAAAAnAAQAAQAIAAUAAAAnAAEAAQAIAAUAAAAnAAUAAQAIAAUAAAAnAAYAAQAIAAUAAAAnAAcAAQAIAAUAAAAnAAgAAQAIAAYAAAAnAAkAAQAAAAAAAAAmAAkAAQAAAAAAAAAmAAgAAQAIAAYAAAAlAAgAAQAIAAYAAAAlAAcAAQAIAAUAAAAlAAYAAQAIAAUAAAAlAAUAAQAIAAUAAAAlAAQAAQAIAAUAAAAlAAMAAQAIAAUAAAAmAAMAAQAIAAUAAAAlAAIAAQAIAAUAAAAmAAQAAQAIAAUAAAAmAAUAAQAIAAUAAAAmAAcAAQAIAAUAAAAmAAYAAQAIAAUAAAAlAAkAAQAAAAAAAAAlAAoAAQAAAAAAAAAlAAsAAQAIAAQAAAAmAAsAAQAIAAQAAAAnAAsAAQAIAAQAAAAnAAoAAQAAAAAAAAAmAAoAAQAAAAAAAAAYAP7/AQAHAAwAAAAYAP3/AQAHAAwAAAAYAPz/AQAHAAwAAAAYAPv/AQAHAAwAAAAYAPr/AQAHAAwAAAAYAPn/AQAHAAwAAAAYAPj/AQAHAAwAAAAYAPf/AQAHAAwAAAAbAAAAAQATAAAAAAAbAAEAAQATAAAAAAAbAAIAAQATAAAAAAAbAAMAAQATAAEAAAAdAAAAAQATAAAAAAAdAAEAAQATAAEAAAAaAAAAAQATAAEAAAAnAAwAAQAIAAUAAAAnAA0AAQAIAAUAAAAnAA4AAQAIAAUAAAAnAA8AAQAIAAUAAAAnABAAAQAIAAUAAAAmABAAAQAIAAUAAAAmAA8AAQAIAAUAAAAmAA4AAQAIAAUAAAAmAA0AAQAIAAUAAAAmAAwAAQAIAAUAAAAlAAwAAQAIAAUAAAAlAA0AAQAIAAUAAAAlAA4AAQAIAAUAAAAlAA8AAQAIAAUAAAAlABAAAQAIAAUAAAAkABAAAQAIAAUAAAAkAA8AAQAIAAUAAAAkAA4AAQAIAAUAAAAkAA0AAQAIAAUAAAAkAAwAAQAIAAUAAAAjAAwAAQAIAAUAAAAjAA0AAQAIAAUAAAAjAA4AAQAIAAUAAAAjAA8AAQAIAAUAAAAjABAAAQAIAAUAAAAiABAAAQAIAAUAAAAiAA8AAQAIAAUAAAAiAA4AAQAIAAUAAAAiAA0AAQAIAAUAAAAiAAwAAQAIAAUAAAAhAAwAAQAIAAUAAAAhAA0AAQAIAAUAAAAhAA4AAQAIAAUAAAAhAA8AAQAIAAUAAAAhABAAAQAIAAUAAAAgABAAAQAIAAUAAAAgAA8AAQAIAAUAAAAgAA4AAQAIAAUAAAAgAA0AAQAIAAUAAAAgAAwAAQAIAAUAAAAfAAwAAQAIAAUAAAAfAA0AAQAIAAUAAAAfAA4AAQAIAAUAAAAfAA8AAQAIAAUAAAAfABAAAQAIAAUAAAAeABAAAQAIAAUAAAAeAA8AAQAIAAUAAAAeAA4AAQAIAAUAAAAeAA0AAQAIAAUAAAAeAAwAAQAIAAUAAAAdAAwAAQAIAAUAAAAdAA0AAQAIAAUAAAAdAA4AAQAIAAUAAAAdAA8AAQAIAAUAAAAdABAAAQAIAAUAAAAcABAAAQAIAAUAAAAcAA8AAQAIAAUAAAAcAA4AAQAIAAUAAAAcAA0AAQAIAAUAAAAcAAwAAQAIAAUAAAAbAAwAAQAIAAUAAAAbAA0AAQAIAAUAAAAbAA4AAQAIAAUAAAAbAA8AAQAIAAUAAAAbABAAAQAIAAUAAAAaABAAAQAIAAUAAAAaAA8AAQAIAAUAAAAaAA4AAQAIAAUAAAAaAA0AAQAIAAUAAAAaAAwAAQAIAAUAAAAZAAwAAQAIAAUAAAAZAA0AAQAIAAUAAAAZAA4AAQAIAAUAAAAZAA8AAQAIAAUAAAAZABAAAQAIAAUAAAAYABAAAQAIAAUAAAAYAA8AAQAIAAUAAAAYAA4AAQAIAAUAAAAYAA0AAQAIAAUAAAAYAAwAAQAIAAUAAAAXAAwAAQAIAAUAAAAXAA0AAQAIAAUAAAAXAA4AAQAIAAUAAAAXAA8AAQAIAAUAAAAXABAAAQAIAAUAAAAWABAAAQAIAAUAAAAWAA8AAQAIAAUAAAAWAA4AAQAIAAUAAAAWAA0AAQAIAAUAAAAWAAwAAQAIAAUAAAAVAAwAAQAIAAUAAAAVAA0AAQAIAAUAAAAVAA4AAQAIAAUAAAAVAA8AAQAIAAUAAAAVABAAAQAIAAUAAAAUABAAAQAIAAUAAAAUAA8AAQAIAAUAAAAUAA4AAQAIAAUAAAAUAA0AAQAIAAUAAAAUAAwAAQAIAAUAAAATAAwAAQAIAAUAAAATAA0AAQAIAAUAAAATAA4AAQAIAAUAAAATAA8AAQAIAAUAAAATABAAAQAIAAUAAAASABAAAQAIAAUAAAASAA8AAQAIAAUAAAASAA4AAQAIAAUAAAASAA0AAQAIAAUAAAASAAwAAQAIAAUAAAARAAwAAQAIAAUAAAARAA0AAQAIAAUAAAARAA4AAQAIAAUAAAARAA8AAQAIAAUAAAARABAAAQAIAAUAAAAQABAAAQAIAAUAAAAQAA8AAQAIAAUAAAAQAA4AAQAIAAUAAAAQAA0AAQAIAAUAAAAQAAwAAQAIAAUAAAAPAAwAAQAIAAUAAAAPAA0AAQAIAAUAAAAPAA4AAQAIAAUAAAAPAA8AAQAIAAUAAAAPABAAAQAIAAUAAAAOABAAAQAIAAUAAAAOAA8AAQAIAAUAAAAOAA4AAQAIAAUAAAAOAA0AAQAIAAUAAAANAA0AAQAIAAUAAAANAAwAAQAIAAUAAAAOAAwAAQAIAAUAAAANAA4AAQAIAAUAAAANAA8AAQAIAAUAAAANABAAAQAIAAUAAAAMABAAAQAIAAUAAAAMAA8AAQAIAAUAAAAMAA4AAQAIAAUAAAAMAA0AAQAIAAUAAAAMAAwAAQAIAAUAAAD6/wsAAQAIAAUAAAD5/wsAAQAIAAUAAAD4/wsAAQAIAAUAAAD4/woAAQAIAAUAAAD5/woAAQAIAAUAAAD6/woAAQAIAAUAAAD6/wkAAQAIAAUAAAD5/wkAAQAIAAUAAAD4/wkAAQAIAAUAAAD4/wgAAQAIAAUAAAD5/wgAAQAIAAUAAAD6/wgAAQAIAAUAAAD6/wcAAQAIAAUAAAD5/wcAAQAIAAUAAAD4/wcAAQAIAAUAAAD4/wYAAQAIAAUAAAD5/wYAAQAIAAUAAAD6/wYAAQAIAAUAAAD6/wUAAQAIAAUAAAD5/wUAAQAIAAUAAAD4/wUAAQAIAAUAAAD4/wQAAQAIAAUAAAD5/wQAAQAIAAUAAAD6/wQAAQAIAAUAAAD6/wMAAQAIAAUAAAD5/wMAAQAIAAUAAAD4/wMAAQAIAAUAAAD4/wIAAQAIAAUAAAD4/wEAAQAIAAUAAAD5/wEAAQAIAAUAAAD6/wEAAQAIAAUAAAD5/wIAAQAIAAUAAAD6/wIAAQAIAAUAAAD6/wAAAQAIAAUAAAD5/wAAAQAIAAUAAAD4/wAAAQAIAAUAAAD4////AQAIAAUAAAD5////AQAIAAUAAAD6////AQAIAAUAAAD6//7/AQAIAAUAAAD5//7/AQAIAAUAAAD4//7/AQAIAAUAAAD3//7/AQAIAAUAAAD3//3/AQAIAAUAAAD4//3/AQAIAAUAAAD5//3/AQAIAAUAAAD6//3/AQAIAAUAAAAAAAwAAQAHAAUAAAD9/wwAAQAJAAUAAAD9/w0AAQAJAAUAAAD9/w4AAQAJAAUAAAD9/w8AAQAJAAUAAAD9/xAAAQAJAAUAAAD9/xEAAQAJAAUAAAD9/xIAAQAJAAUAAAAAAA0AAQAHAAUAAAAAAA4AAQAHAAUAAAAAAA8AAQAHAAUAAAAAABAAAQAHAAUAAAAAABEAAQAHAAUAAAAAABIAAQAHAAUAAAABAAwAAQAIAAUAAAACAAwAAQAIAAUAAAADAAwAAQAIAAUAAAAEAAwAAQAIAAUAAAAFAAwAAQAIAAUAAAAGAAwAAQAIAAUAAAAHAAwAAQAIAAUAAAAIAAwAAQAIAAUAAAAIAA0AAQAIAAUAAAAIAA4AAQAIAAUAAAAIAA8AAQAIAAUAAAAHABAAAQAIAAUAAAAHABEAAQAIAAUAAAAHABIAAQAIAAUAAAAGABIAAQAIAAUAAAAFABIAAQAIAAUAAAAEABIAAQAIAAUAAAADABIAAQAIAAUAAAACABIAAQAIAAUAAAACABEAAQAIAAUAAAABABEAAQAIAAUAAAABABIAAQAIAAUAAAABABAAAQAIAAUAAAABAA8AAQAIAAUAAAABAA4AAQAIAAUAAAABAA0AAQAIAAUAAAACAA0AAQAIAAUAAAADAA0AAQAIAAUAAAAEAA0AAQAIAAUAAAAFAA0AAQAIAAUAAAAGAA0AAQAIAAUAAAAHAA0AAQAIAAUAAAAHAA4AAQAIAAUAAAAHAA8AAQAIAAUAAAAGABAAAQAIAAUAAAAGABEAAQAIAAUAAAAFABEAAQAIAAUAAAAEABEAAQAIAAUAAAADABEAAQAIAAUAAAACABAAAQAIAAUAAAACAA8AAQAIAAUAAAACAA4AAQAIAAUAAAADAA4AAQAIAAUAAAAGAA4AAQAIAAUAAAAGAA8AAQAIAAUAAAAFABAAAQAIAAUAAAAEABAAAQAIAAUAAAADABAAAQAIAAUAAAADAA8AAQAIAAUAAAAEAA4AAQAIAAUAAAAFAA4AAQAIAAUAAAAFAA8AAQAIAAUAAAAEAA8AAQAIAAUAAAAIABEAAQAIAAUAAAAIABIAAQAIAAUAAAAIABAAAQAIAAUAAAD8/wwAAQAIAAUAAAD8/w0AAQAIAAUAAAD8/w4AAQAIAAUAAAD8/w8AAQAIAAUAAAD8/xAAAQAIAAUAAAD8/xEAAQAIAAUAAAD8/xIAAQAIAAUAAAD7/xIAAQAIAAUAAAD6/xIAAQAIAAUAAAD5/xIAAQAIAAUAAAD4/xIAAQAIAAUAAAD3/xIAAQAIAAUAAAD2/xIAAQAIAAUAAAD1/xIAAQAIAAUAAAD0/xIAAQAIAAUAAAD0/xEAAQAIAAUAAAD0/xAAAQAIAAUAAAD0/w8AAQAIAAUAAAD0/w4AAQAIAAUAAAD0/w0AAQAIAAUAAAD0/wwAAQAIAAUAAAD0/wsAAQAIAAUAAAD1/wsAAQAIAAUAAAD1/woAAQAIAAUAAAD2/woAAQAIAAUAAAD3/woAAQAIAAUAAAD6/wwAAQAIAAUAAAD6/w0AAQAIAAUAAAD6/w4AAQAIAAUAAAD7/w4AAQAIAAUAAAD7/w8AAQAIAAUAAAD7/xAAAQAIAAUAAAD7/xEAAQAIAAUAAAD7/w0AAQAIAAUAAAD7/wwAAQAIAAUAAAD6/w8AAQAIAAUAAAD6/xAAAQAIAAUAAAD6/xEAAQAIAAUAAAD5/xEAAQAIAAUAAAD4/xEAAQAIAAUAAAD3/xEAAQAIAAUAAAD2/xEAAQAIAAUAAAD1/xEAAQAIAAUAAAD1/w0AAQAIAAUAAAD1/wwAAQAIAAUAAAD2/wsAAQAIAAUAAAD3/wsAAQAIAAUAAAD4/wwAAQAIAAUAAAD5/wwAAQAIAAUAAAD5/w0AAQAIAAUAAAD5/w4AAQAIAAUAAAD5/w8AAQAIAAUAAAD5/xAAAQAIAAUAAAD4/xAAAQAIAAUAAAD3/xAAAQAIAAUAAAD2/xAAAQAIAAUAAAD1/xAAAQAIAAUAAAD1/w8AAQAIAAUAAAD1/w4AAQAIAAUAAAD2/w4AAQAIAAUAAAD2/w0AAQAIAAUAAAD3/w0AAQAIAAUAAAD3/wwAAQAIAAUAAAD4/w0AAQAIAAUAAAD4/w4AAQAIAAUAAAD4/w8AAQAIAAUAAAD3/w8AAQAIAAUAAAD2/w8AAQAIAAUAAAD3/w4AAQAIAAUAAAD2/wwAAQAIAAUAAAD0/woAAQAIAAUAAAD0/wkAAQAIAAUAAAD0/wgAAQAIAAUAAAD0/wcAAQAIAAUAAAD0/wYAAQAIAAUAAAD0/wUAAQAIAAUAAAD0/wQAAQAIAAUAAAD1/wUAAQAIAAUAAAD2/wUAAQAIAAUAAAD3/wUAAQAIAAUAAAD3/wkAAQAIAAUAAAD2/wkAAQAIAAUAAAD1/wkAAQAIAAUAAAD1/wgAAQAIAAUAAAD1/wcAAQAIAAUAAAD1/wYAAQAIAAUAAAD2/wYAAQAIAAUAAAD3/wYAAQAIAAUAAAD3/wcAAQAIAAUAAAD3/wgAAQAIAAUAAAD2/wgAAQAIAAUAAAD2/wcAAQAIAAUAAAD0/wMAAQAIAAUAAAD0/wIAAQAIAAUAAAD0/wEAAQAIAAUAAAD0/wAAAQAIAAUAAAD0////AQAIAAUAAAD0//7/AQAIAAUAAAD0//3/AQAIAAUAAAD1//3/AQAIAAUAAAD2//3/AQAIAAUAAAD2//7/AQAIAAUAAAD2////AQAIAAUAAAD1////AQAIAAUAAAD1/wAAAQAIAAUAAAD1/wEAAQAIAAUAAAD1/wIAAQAIAAUAAAD1/wMAAQAIAAUAAAD1/wQAAQAIAAUAAAD2/wQAAQAIAAUAAAD3/wQAAQAIAAUAAAD3/wMAAQAIAAUAAAD3/wIAAQAIAAUAAAD3/wEAAQAIAAUAAAD3/wAAAQAIAAUAAAD3////AQAIAAUAAAD2/wAAAQAIAAUAAAD2/wEAAQAIAAUAAAD2/wIAAQAIAAUAAAD2/wMAAQAIAAUAAAD1//7/AQAIAAUAAADz/xIAAQAIAAUAAADy/xIAAQAIAAUAAADx/xIAAQAIAAUAAADx/xEAAQAIAAUAAADx/xAAAQAIAAUAAADx/w8AAQAIAAUAAADx/w4AAQAIAAUAAADx/w0AAQAIAAUAAADx/wwAAQAIAAUAAADx/wsAAQAIAAUAAADx/woAAQAIAAUAAADx/wkAAQAIAAUAAADx/wgAAQAIAAUAAADx/wcAAQAIAAUAAADy/wYAAQAIAAUAAADy/wUAAQAIAAUAAADy/wQAAQAIAAUAAADy/wMAAQAIAAUAAADy/wIAAQAIAAUAAADx/wYAAQAIAAUAAADx/wUAAQAIAAUAAADx/wQAAQAIAAUAAADx/wMAAQAIAAUAAADx/wIAAQAIAAUAAADx/wEAAQAIAAUAAADx/wAAAQAIAAUAAADx////AQAIAAUAAADy////AQAIAAUAAADz////AQAIAAUAAADz/wAAAQAIAAUAAADy/wAAAQAIAAUAAADy/wEAAQAIAAUAAADz/wIAAQAIAAUAAADz/wEAAQAIAAUAAADz/wMAAQAIAAUAAADz/wQAAQAIAAUAAADz/wUAAQAIAAUAAADz/wYAAQAIAAUAAADz/wcAAQAIAAUAAADz/wgAAQAIAAUAAADz/wkAAQAIAAUAAADz/woAAQAIAAUAAADz/wsAAQAIAAUAAADy/wsAAQAIAAUAAADy/wwAAQAIAAUAAADy/woAAQAIAAUAAADy/wkAAQAIAAUAAADy/wgAAQAIAAUAAADy/wcAAQAIAAUAAADy/w0AAQAIAAUAAADy/w4AAQAIAAUAAADy/w8AAQAIAAUAAADy/xAAAQAIAAUAAADz/xAAAQAIAAUAAADz/xEAAQAIAAUAAADz/w8AAQAIAAUAAADz/w4AAQAIAAUAAADz/w0AAQAIAAUAAADz/wwAAQAIAAUAAADy/xEAAQAIAAUAAAA=") diff --git a/room_test3.tscn b/room_test3.tscn index 21c1a81..cf28cea 100644 --- a/room_test3.tscn +++ b/room_test3.tscn @@ -441,7 +441,6 @@ sources/1 = SubResource("TileSetAtlasSource_0e48y") [node name="RoomTest3" type="Node2D"] process_mode = 1 -metadata/_custom_type_script = "uid://cbhily4o7e2r3" [node name="TileMapLayer" type="TileMapLayer" parent="."] tile_map_data = PackedByteArray("AAACAAYAAQAIAAQAAAADAAYAAQAIAAQAAAAEAAYAAQAIAAQAAAAFAAYAAQAIAAUAAAAGAAYAAQAIAAUAAAAHAAYAAQAIAAUAAAAIAAYAAQAIAAQAAAACAAcAAQAIAAUAAAACAAgAAQAIAAUAAAADAAgAAQAIAAUAAAAEAAgAAQAIAAUAAAAEAAkAAQAIAAUAAAAFAAkAAQAIAAUAAAAGAAkAAQAIAAUAAAAHAAkAAQAIAAUAAAAHAAgAAQAIAAUAAAAIAAgAAQAIAAUAAAAIAAcAAQAIAAUAAAAHAAcAAQAIAAUAAAAGAAcAAQAIAAUAAAAFAAcAAQAIAAUAAAAEAAcAAQAIAAUAAAADAAcAAQAIAAUAAAAFAAgAAQAIAAUAAAAGAAgAAQAIAAUAAAAJAAUAAQAHAAUAAAAJAAQAAQAHAAUAAAAKAAQAAQAIAAUAAAALAAQAAQAIAAUAAAALAAUAAQAIAAUAAAALAAYAAQAIAAUAAAALAAcAAQAIAAUAAAAMAAgAAQAIAAUAAAANAAgAAQAIAAUAAAALAAgAAQAIAAUAAAAKAAgAAQAIAAUAAAAKAAcAAQAIAAUAAAAKAAYAAQAIAAUAAAAKAAUAAQAIAAUAAAAJAAYAAQAIAAUAAAAJAAcAAQAIAAUAAAAJAAgAAQAIAAUAAAAJAAkAAQAIAAUAAAAIAAkAAQAIAAUAAAAKAAkAAQAIAAUAAAALAAkAAQAIAAUAAAAMAAkAAQAIAAUAAAAMAAcAAQAIAAUAAAABAAUAAQAJAAUAAAABAAQAAQAJAAUAAAABAAMAAQAJAAUAAAABAAIAAQAJAAUAAAAAAAIAAQAIAAUAAAAAAAMAAQAIAAUAAAAAAAQAAQAIAAUAAAAAAAUAAQAIAAUAAAAAAAYAAQAIAAUAAAAAAAcAAQAIAAUAAAABAAYAAQAIAAUAAAABAAcAAQAIAAUAAAABAAgAAQAIAAUAAAABAAkAAQAIAAUAAAAAAAkAAQAIAAUAAAAAAAgAAQAIAAUAAAACAAkAAQAIAAUAAAADAAkAAQAIAAUAAAAOAAYAAQAAAAAAAAAOAAgAAQAAAAAAAAAPAAkAAQAAAAAAAAAKAAMAAQAIAAUAAAAKAAIAAQAIAAUAAAAHAAUAAQAJAAUAAAAEAAEAAQAJAAYAAAAEAAIAAQATAAAAAAAEAAMAAQATAAEAAAAPAAgAAQAAAAAAAAAQAAcAAQAAAAAAAAAQAAYAAQAAAAAAAAAQAAUAAQAAAAAAAAAQAAQAAQAAAAAAAAAQAAMAAQAAAAAAAAAQAAIAAQAAAAAAAAAQAAEAAQAAAAAAAAAQAAAAAQAAAAAAAAANAAkAAQAIAAUAAAAOAAkAAQAAAAAAAAAQAAkAAQAAAAAAAAAQAAgAAQAAAAAAAAARAAkAAQAAAAAAAAARAAgAAQAAAAAAAAARAAcAAQAAAAAAAAARAAYAAQAAAAAAAAARAAUAAQAAAAAAAAARAAQAAQAAAAAAAAARAAMAAQAAAAAAAAARAAIAAQAAAAAAAAARAAEAAQAAAAAAAAARAAAAAQAAAAAAAAASAAAAAQAAAAAAAAASAAEAAQAAAAAAAAASAAIAAQAAAAAAAAASAAMAAQAAAAAAAAASAAQAAQAAAAAAAAASAAUAAQAAAAAAAAASAAYAAQAAAAAAAAASAAcAAQAAAAAAAAASAAgAAQAAAAAAAAASAAkAAQAAAAAAAAASAAoAAQAAAAAAAAASAAsAAQAAAAAAAAARAAsAAQAAAAAAAAARAAoAAQAAAAAAAAAQAAoAAQAAAAAAAAAPAAoAAQAAAAAAAAAOAAoAAQAAAAAAAAANAAoAAQAIAAUAAAAMAAoAAQAIAAUAAAALAAoAAQAIAAUAAAAKAAoAAQAIAAUAAAAJAAoAAQAIAAUAAAAIAAoAAQAIAAUAAAAHAAoAAQAIAAUAAAAGAAoAAQAIAAUAAAAFAAoAAQAIAAUAAAAEAAoAAQAIAAUAAAADAAoAAQAIAAUAAAACAAoAAQAIAAUAAAABAAoAAQAIAAUAAAAAAAoAAQAIAAUAAAAAAAsAAQAIAAUAAAABAAsAAQAIAAUAAAACAAsAAQAIAAUAAAADAAsAAQAIAAUAAAAEAAsAAQAIAAUAAAAFAAsAAQAIAAUAAAAGAAsAAQAIAAUAAAAHAAsAAQAIAAUAAAAIAAsAAQAIAAUAAAAJAAsAAQAIAAUAAAAKAAsAAQAIAAUAAAALAAsAAQAIAAUAAAAMAAsAAQAIAAUAAAANAAsAAQAAAAAAAAAOAAsAAQAAAAAAAAAPAAsAAQAAAAAAAAAQAAsAAQAAAAAAAAAAAAEAAQAIAAUAAAAAAAAAAQAIAAUAAAAAAP//AQAIAAUAAAAAAP7/AQAIAAUAAAD///7/AQAIAAUAAAD/////AQAIAAUAAAD//wAAAQAIAAUAAAD//wEAAQAIAAUAAAD//wIAAQAIAAUAAAD//wMAAQAIAAUAAAD//wQAAQAIAAUAAAD//wUAAQAIAAUAAAD//wYAAQAIAAUAAAD//wcAAQAIAAUAAAD//wgAAQAIAAUAAAD+/wgAAQAIAAUAAAD+/wcAAQAIAAUAAAD+/wYAAQAIAAUAAAD+/wUAAQAIAAUAAAD+/wQAAQAIAAUAAAD+/wMAAQAIAAUAAAD+/wIAAQAIAAUAAAD+/wEAAQAIAAUAAAD+/wAAAQAIAAUAAAD+////AQAIAAUAAAD+/wkAAQAIAAUAAAD//wkAAQAIAAUAAAD//woAAQAIAAUAAAD//wsAAQAIAAUAAAD+/wsAAQAIAAUAAAD+/woAAQAIAAUAAAABAAEAAQAIAAUAAAABAAAAAQAIAAUAAAABAP//AQAIAAUAAAABAP7/AQAIAAUAAAABAP3/AQAIAAUAAAAQAP//AQAAAAAAAAAQAP7/AQAAAAAAAAAQAP3/AQAAAAAAAAARAP//AQAAAAAAAAAPAAcAAQAAAAAAAAAQAPz/AQAAAAAAAAARAP7/AQAAAAAAAAAUAAcAAQAAAAAAAAAUAAYAAQAAAAAAAAAUAAUAAQAAAAAAAAAUAAQAAQAAAAAAAAAUAAMAAQAAAAAAAAAUAAEAAQAAAAAAAAAUAAIAAQAAAAAAAAATAAgAAQAAAAAAAAATAAkAAQAAAAAAAAATAAoAAQAAAAAAAAATAAsAAQAAAAAAAAAUAAsAAQAAAAAAAAAUAAoAAQAAAAAAAAAUAAkAAQAAAAAAAAAUAAgAAQAAAAAAAAAVAAkAAQAAAAAAAAAVAAoAAQAAAAAAAAAVAAsAAQAAAAAAAAAVAAgAAQAAAAAAAAAVAAcAAQAAAAAAAAAVAAYAAQAAAAAAAAAVAAUAAQAAAAAAAAAVAAQAAQAAAAAAAAAVAAMAAQAAAAAAAAAVAAIAAQAAAAAAAAAWAAQAAQAAAAAAAAAXAAUAAQAAAAAAAAAYAAYAAQAAAAAAAAAWAAUAAQAAAAAAAAAWAAYAAQAAAAAAAAAXAAYAAQAAAAAAAAAXAAcAAQAAAAAAAAAWAAcAAQAAAAAAAAAWAAgAAQAAAAAAAAAXAAgAAQAAAAAAAAAWAAkAAQAAAAAAAAAWAAoAAQAAAAAAAAAWAAsAAQAAAAAAAAAXAAsAAQAAAAAAAAAXAAoAAQAAAAAAAAAXAAkAAQAAAAAAAAAYAAkAAQAAAAAAAAAYAAgAAQAAAAAAAAAYAAcAAQAAAAAAAAAYAAoAAQAAAAAAAAAYAAsAAQAAAAAAAAAZAAcAAQAAAAAAAAAaAAcAAQAAAAAAAAAbAAcAAQAAAAAAAAAcAAcAAQAAAAAAAAAdAAcAAQAAAAAAAAAeAAcAAQAAAAAAAAAfAAcAAQAAAAAAAAAgAAcAAQAAAAAAAAAhAAcAAQAAAAAAAAAhAAgAAQAAAAAAAAAhAAkAAQAAAAAAAAAhAAoAAQAAAAAAAAAgAAoAAQAAAAAAAAAgAAkAAQAAAAAAAAAgAAgAAQAAAAAAAAAfAAgAAQAAAAAAAAAfAAkAAQAAAAAAAAAeAAkAAQAAAAAAAAAdAAgAAQAAAAAAAAAcAAgAAQAAAAAAAAAbAAgAAQAAAAAAAAAaAAgAAQAAAAAAAAAZAAgAAQAAAAAAAAAeAAgAAQAAAAAAAAAeAAoAAQAAAAAAAAAdAAoAAQAAAAAAAAAcAAoAAQAAAAAAAAAbAAoAAQAAAAAAAAAbAAkAAQAAAAAAAAAaAAkAAQAAAAAAAAAZAAkAAQAAAAAAAAAcAAkAAQAAAAAAAAAdAAkAAQAAAAAAAAAaAAoAAQAAAAAAAAAZAAoAAQAAAAAAAAAZAAsAAQAAAAAAAAAaAAsAAQAAAAAAAAAbAAsAAQAAAAAAAAAcAAsAAQAAAAAAAAAdAAsAAQAAAAAAAAAeAAsAAQAAAAAAAAAfAAsAAQAAAAAAAAAgAAsAAQAAAAAAAAAfAAoAAQAAAAAAAAAhAAsAAQAAAAAAAAAAAP3/AQAIAAUAAAD///3/AQAIAAUAAAD+//3/AQAIAAUAAAD9//3/AQAIAAUAAAD8//3/AQAIAAUAAAD+//7/AQAIAAUAAAD9//7/AQAIAAUAAAD8//7/AQAIAAUAAAD7//7/AQAIAAUAAAD7//3/AQAIAAUAAAD7////AQAIAAUAAAD8////AQAIAAUAAAD9////AQAIAAUAAAD9/wAAAQAIAAUAAAD9/wEAAQAIAAUAAAD9/wIAAQAIAAUAAAD8/wIAAQAIAAUAAAD7/wEAAQAIAAUAAAD7/wAAAQAIAAUAAAD8/wAAAQAIAAUAAAD8/wEAAQAIAAUAAAD7/wIAAQAIAAUAAAD7/wMAAQAIAAUAAAD8/wMAAQAIAAUAAAD9/wMAAQAIAAUAAAD9/wQAAQAIAAUAAAD8/wQAAQAIAAUAAAD7/wQAAQAIAAUAAAD7/wUAAQAIAAUAAAD8/wUAAQAIAAUAAAD9/wUAAQAIAAUAAAD9/wYAAQAIAAUAAAD8/wYAAQAIAAUAAAD7/wYAAQAIAAUAAAD7/wcAAQAIAAUAAAD8/wcAAQAIAAUAAAD9/wcAAQAIAAUAAAD9/wgAAQAIAAUAAAD8/wgAAQAIAAUAAAD7/wgAAQAIAAUAAAD7/wkAAQAIAAUAAAD8/wkAAQAIAAUAAAD9/wkAAQAIAAUAAAD9/woAAQAIAAUAAAD8/woAAQAIAAUAAAD7/woAAQAIAAUAAAD7/wsAAQAIAAUAAAD8/wsAAQAIAAUAAAD9/wsAAQAIAAUAAAAfAAYAAQAAAAAAAAAfAAUAAQAAAAAAAAAgAAUAAQAAAAAAAAAhAAUAAQAAAAAAAAAiAAcAAQAAAAAAAAAiAAYAAQAAAAAAAAAiAAUAAQAAAAAAAAAiAAQAAQAAAAAAAAAiAAMAAQAAAAAAAAAiAAIAAQAAAAAAAAAiAAEAAQAAAAAAAAAiAAgAAQAAAAAAAAAiAAkAAQAAAAAAAAAiAAoAAQAAAAAAAAAiAAsAAQAAAAAAAAAjAAsAAQAAAAAAAAAjAAoAAQAAAAAAAAAkAAoAAQAAAAAAAAAkAAkAAQAAAAAAAAAjAAkAAQAAAAAAAAAjAAgAAQAAAAAAAAAkAAsAAQAAAAAAAAAkAAgAAQAAAAAAAAAjAAcAAQAAAAAAAAAkAAcAAQAAAAAAAAAkAAYAAQAAAAAAAAAkAAUAAQAAAAAAAAAkAAQAAQAAAAAAAAAkAAMAAQAAAAAAAAAkAAIAAQAAAAAAAAAjAAIAAQAAAAAAAAAjAAEAAQAAAAAAAAAjAAMAAQAAAAAAAAAjAAQAAQAAAAAAAAAjAAUAAQAAAAAAAAAjAAYAAQAAAAAAAAAkAAEAAQAAAAAAAAAjAAAAAQAAAAAAAAAjAP//AQAAAAAAAAAjAP7/AQAAAAAAAAAjAP3/AQAAAAAAAAAjAPz/AQAAAAAAAAAjAPv/AQAAAAAAAAAjAPr/AQAAAAAAAAAkAPr/AQAAAAAAAAAkAPv/AQAAAAAAAAAkAPz/AQAAAAAAAAAkAP3/AQAAAAAAAAAkAP7/AQAAAAAAAAAkAP//AQAAAAAAAAAkAAAAAQAAAAAAAAAhAAMAAQAAAAAAAAAhAAIAAQAAAAAAAAAiAAAAAQAAAAAAAAAYAP//AQAAAAAAAAAZAP//AQAAAAAAAAAaAP//AQAAAAAAAAAbAP//AQAAAAAAAAAcAP//AQAAAAAAAAAdAP//AQAAAAAAAAAeAP//AQAAAAAAAAAfAP//AQAAAAAAAAAgAP//AQAAAAAAAAAcAP7/AQAAAAAAAAAjAPn/AQAAAAAAAAAkAPn/AQAAAAAAAAAlAPn/AQAAAAAAAAAmAPn/AQAAAAAAAAAnAPn/AQAAAAAAAAAnAPr/AQAAAAAAAAAnAPv/AQAAAAAAAAAnAPz/AQAAAAAAAAAmAPz/AQAAAAAAAAAmAPv/AQAAAAAAAAAlAPv/AQAAAAAAAAAlAPr/AQAAAAAAAAAmAPr/AQAAAAAAAAAlAPz/AQAAAAAAAAAlAP3/AQAAAAAAAAAmAP3/AQAAAAAAAAAnAP3/AQAAAAAAAAAmAP7/AQAAAAAAAAAlAP7/AQAAAAAAAAAlAP//AQAAAAAAAAAmAP//AQAAAAAAAAAnAP//AQAAAAAAAAAnAP7/AQAAAAAAAAAnAAAAAQAAAAAAAAAmAAAAAQAAAAAAAAAlAAAAAQAAAAAAAAAlAAEAAQAAAAAAAAAmAAEAAQAAAAAAAAAmAAIAAQAAAAAAAAAnAAIAAQAAAAAAAAAnAAMAAQAAAAAAAAAnAAQAAQAAAAAAAAAnAAEAAQAAAAAAAAAnAAUAAQAAAAAAAAAnAAYAAQAAAAAAAAAnAAcAAQAAAAAAAAAnAAgAAQAAAAAAAAAnAAkAAQAAAAAAAAAmAAkAAQAAAAAAAAAmAAgAAQAAAAAAAAAlAAgAAQAAAAAAAAAlAAcAAQAAAAAAAAAlAAYAAQAAAAAAAAAlAAUAAQAAAAAAAAAlAAQAAQAAAAAAAAAlAAMAAQAAAAAAAAAmAAMAAQAAAAAAAAAlAAIAAQAAAAAAAAAmAAQAAQAAAAAAAAAmAAUAAQAAAAAAAAAmAAcAAQAAAAAAAAAmAAYAAQAAAAAAAAAlAAkAAQAAAAAAAAAlAAoAAQAAAAAAAAAlAAsAAQAAAAAAAAAmAAsAAQAAAAAAAAAnAAsAAQAAAAAAAAAnAAoAAQAAAAAAAAAmAAoAAQAAAAAAAAAYAP7/AQAAAAAAAAAYAP3/AQAAAAAAAAAYAPz/AQAAAAAAAAAYAPv/AQAAAAAAAAAYAPr/AQAAAAAAAAAYAPn/AQAAAAAAAAAYAPj/AQAAAAAAAAAYAPf/AQAAAAAAAAAbAAAAAQAAAAAAAAAbAAEAAQAAAAAAAAAbAAIAAQAAAAAAAAAbAAMAAQAAAAAAAAAdAAAAAQAAAAAAAAAdAAEAAQAAAAAAAAAaAAAAAQAAAAAAAAAnAAwAAQAAAAAAAAAnAPj/AQAAAAAAAAAnAA0AAQAAAAAAAAAnAA4AAQAAAAAAAAAnAA8AAQAAAAAAAAAkAPj/AQAAAAAAAAAkAPf/AQAAAAAAAAAmAAwAAQAAAAAAAAAlAPj/AQAAAAAAAAAlAPf/AQAAAAAAAAAkAPb/AQAAAAAAAAAkAPX/AQAAAAAAAAAkAPT/AQAAAAAAAAAlAPT/AQAAAAAAAAAlAPX/AQAAAAAAAAAlAPb/AQAAAAAAAAAmAPj/AQAAAAAAAAAmAA0AAQAAAAAAAAAmAA4AAQAAAAAAAAAlAA4AAQAAAAAAAAAlAA0AAQAAAAAAAAAlAAwAAQAAAAAAAAAiAP//AQAAAAAAAAAiAP7/AQAAAAAAAAAiAP3/AQAAAAAAAAAiAPz/AQAAAAAAAAAiAPv/AQAAAAAAAAAiAPr/AQAAAAAAAAAiAPn/AQAAAAAAAAAiAPj/AQAAAAAAAAAiAPf/AQAAAAAAAAAiAPb/AQAAAAAAAAAjAPj/AQAAAAAAAAAgAAYAAQAAAAAAAAAgAAQAAQAAAAAAAAAgAAMAAQAAAAAAAAAhAAEAAQAAAAAAAAAhAAYAAQAAAAAAAAAfAAQAAQAAAAAAAAAgAAIAAQAAAAAAAAAhAAQAAQAAAAAAAAAYAAUAAQAAAAAAAAAZAAYAAQAAAAAAAAAaAAYAAQAAAAAAAAAcAAYAAQAAAAAAAAAdAAUAAQAAAAAAAAAdAAQAAQAAAAAAAAAeAAQAAQAAAAAAAAAeAAMAAQAAAAAAAAAfAAMAAQAAAAAAAAAfAAIAAQAAAAAAAAAfAAEAAQAAAAAAAAAfAAAAAQAAAAAAAAAZAP7/AQAAAAAAAAAZAPn/AQAAAAAAAAAZAPj/AQAAAAAAAAAZAPf/AQAAAAAAAAAZAPb/AQAAAAAAAAAYAPb/AQAAAAAAAAAcAAIAAQAAAAAAAAAcAAEAAQAAAAAAAAAeAAAAAQAAAAAAAAAcAAAAAQAAAAAAAAAcAAMAAQAAAAAAAAAcAAQAAQAAAAAAAAAbAAUAAQAAAAAAAAAbAAYAAQAAAAAAAAAZAAwAAQAAAAAAAAAZAA0AAQAAAAAAAAAYAA0AAQAAAAAAAAAYAAwAAQAAAAAAAAATAAcAAQAAAAAAAAASAAwAAQAAAAAAAAATAAYAAQAAAAAAAAAQAAwAAQAAAAAAAAAQAA0AAQAAAAAAAAAQAA4AAQAAAAAAAAAQAA8AAQAAAAAAAAAQABAAAQAAAAAAAAAPAA8AAQAAAAAAAAAPAA4AAQAAAAAAAAAPAA0AAQAAAAAAAAAPAAwAAQAAAAAAAAAPAAYAAQAAAAAAAAAPAAUAAQAAAAAAAAAPAAQAAQAAAAAAAAAPAAMAAQAAAAAAAAAPAAIAAQAAAAAAAAAOAA4AAQAAAAAAAAAOAA0AAQAAAAAAAAAOAAwAAQAAAAAAAAAOAAcAAQAAAAAAAAAOAAUAAQAAAAAAAAAOAAQAAQAAAAAAAAAOAAMAAQAAAAAAAAANAAYAAQAIAAUAAAANAAUAAQAIAAUAAAANAAQAAQAIAAUAAAANAAMAAQAIAAUAAAANAAIAAQAIAAUAAAANAAEAAQAIAAUAAAANAAAAAQAIAAUAAAANAAcAAQAIAAUAAAANAAwAAQAAAAAAAAANAA0AAQAAAAAAAAANAA4AAQAAAAAAAAANAA8AAQAAAAAAAAAMAA8AAQAAAAAAAAAMABAAAQAAAAAAAAAMAA4AAQAAAAAAAAAMAA0AAQAAAAAAAAAMAAwAAQAAAAAAAAAMAAYAAQAIAAUAAAALAAMAAQAIAAUAAAALAAIAAQAIAAUAAAALAAEAAQAIAAUAAAAKAAAAAQAIAAUAAAAKAP//AQAIAAUAAAAKAAEAAQAIAAUAAAAKAAwAAQAAAAAAAAAKAA0AAQAAAAAAAAAKAA4AAQAAAAAAAAAJAAMAAQAHAAUAAAAJAAIAAQAHAAUAAAAJAAEAAQAIAAUAAAAJAAAAAQAIAAUAAAAIAP//AQAIAAUAAAAHAP//AQAHAAUAAAAGAP//AQAAAAAAAAAFAP//AQAAAAAAAAAEAP//AQAJAAUAAAADAP//AQAIAAUAAAACAP//AQAIAAUAAAACAP7/AQAIAAUAAAADAP7/AQAIAAUAAAAEAP7/AQAJAAUAAAAFAP7/AQAAAAAAAAAGAP7/AQAAAAAAAAAHAP7/AQAHAAUAAAAIAP7/AQAIAAUAAAAJAP7/AQAIAAUAAAAJAP//AQAIAAUAAAAKAP7/AQAIAAUAAAALAP7/AQAIAAUAAAALAP//AQAIAAUAAAALAAAAAQAIAAUAAAAMAAUAAQAIAAUAAAAMAAQAAQAIAAUAAAAMAAMAAQAIAAUAAAAMAAIAAQAIAAUAAAAMAAEAAQAIAAUAAAAMAAAAAQAIAAUAAAAMAP//AQAIAAUAAAAMAP7/AQAIAAUAAAAMAP3/AQAIAAUAAAALAP3/AQAIAAUAAAAKAP3/AQAIAAUAAAAJAP3/AQAIAAUAAAAIAP3/AQAIAAUAAAAHAP3/AQAHAAUAAAADAP3/AQAIAAUAAAACAP3/AQAIAAUAAAAEAP3/AQAJAAUAAAAFAP3/AQAAAAAAAAAGAP3/AQAAAAAAAAD7//z/AQAIAAUAAAD8//z/AQAIAAUAAAD9//z/AQAIAAUAAAD+//z/AQAIAAUAAAD///z/AQAIAAUAAAAAAPz/AQAIAAUAAAABAPz/AQAIAAUAAAACAPz/AQAIAAUAAAADAPz/AQAIAAUAAAAEAPz/AQAJAAUAAAAFAPz/AQAAAAAAAAAGAPz/AQAAAAAAAAAHAPz/AQAHAAUAAAAIAPz/AQAIAAUAAAAJAPz/AQAIAAUAAAAKAPz/AQAIAAUAAAALAPz/AQAIAAUAAAAMAPz/AQAIAAUAAAD6/wYAAQAIAAUAAAD5/wYAAQAIAAUAAAD4/wYAAQAIAAUAAAD3/wYAAQAIAAUAAAD2/wYAAQAIAAUAAAD1/wYAAQAIAAQAAAD0/wYAAQAIAAUAAAD6/wcAAQAIAAUAAAD5/wcAAQAIAAUAAAD4/wcAAQAIAAUAAAD3/wcAAQAIAAUAAAD2/wcAAQAIAAUAAAD1/wcAAQAIAAUAAAD1/wgAAQAIAAUAAAD0/wcAAQAIAAUAAAD0/wgAAQAIAAUAAAD0/wkAAQAIAAUAAAD0/woAAQAIAAUAAAD0/wsAAQAIAAUAAAD0/wwAAQAIAAUAAAD1/wkAAQAIAAUAAAD2/wgAAQAIAAUAAAD3/wgAAQAIAAUAAAD4/wgAAQAIAAUAAAD5/wgAAQAIAAUAAAD6/wgAAQAIAAUAAAD6/wkAAQAIAAUAAAD6/woAAQAIAAUAAAD6/wsAAQAIAAUAAAD5/wsAAQAIAAUAAAD4/wsAAQAIAAUAAAD3/wsAAQAIAAUAAAD2/wsAAQAIAAUAAAD1/wsAAQAIAAUAAAD1/woAAQAIAAUAAAD2/wkAAQAIAAUAAAD3/wkAAQAIAAUAAAD4/wkAAQAIAAUAAAD5/wkAAQAIAAUAAAD5/woAAQAIAAUAAAD4/woAAQAIAAUAAAD3/woAAQAIAAUAAAD2/woAAQAIAAUAAAD6/wIAAQAIAAUAAAD5/wIAAQAIAAUAAAD4/wIAAQAIAAUAAAD3/wIAAQAIAAUAAAD2/wIAAQAIAAUAAAD1/wIAAQAIAAUAAAD0/wIAAQAIAAUAAAD0/wEAAQAIAAUAAAD1/wEAAQAIAAUAAAD2/wEAAQAIAAUAAAD3/wEAAQAIAAUAAAD4/wEAAQAIAAUAAAD5/wEAAQAIAAUAAAD6/wEAAQAIAAUAAAD6/wAAAQAIAAUAAAD6////AQAIAAUAAAD5/wAAAQAIAAUAAAD4/wAAAQAIAAUAAAD3/wAAAQAIAAUAAAD2/wAAAQAIAAUAAAD1/wAAAQAIAAUAAAD0/wAAAQAIAAUAAAD0////AQAIAAUAAAD1////AQAIAAUAAAD2////AQAIAAUAAAD3////AQAIAAUAAAD4////AQAIAAUAAAD5////AQAIAAUAAAD6//7/AQAIAAUAAAD5//7/AQAIAAUAAAD4//7/AQAIAAUAAAD3//7/AQAIAAUAAAD2//7/AQAIAAUAAAD1//7/AQAIAAUAAAD0//7/AQAIAAUAAAD6/wMAAQAIAAUAAAD5/wMAAQAIAAUAAAD4/wMAAQAIAAUAAAD3/wMAAQAIAAUAAAD2/wMAAQAIAAUAAAD1/wMAAQAIAAUAAAD0/wMAAQAIAAUAAAD6/wUAAQAIAAUAAAD5/wUAAQAIAAUAAAD5/wQAAQAIAAUAAAD6/wQAAQAIAAUAAAD4/wQAAQAIAAUAAAD4/wUAAQAIAAUAAAD3/wQAAQAIAAUAAAD3/wUAAQAIAAUAAAD2/wUAAQAIAAUAAAD2/wQAAQAIAAUAAAACAAEAAQAIAAYAAAADAAEAAQAIAAYAAAAFAAEAAQAAAAAAAAAGAAEAAQAAAAAAAAAHAAEAAQAHAAYAAAAIAAEAAQAIAAYAAAAIAAAAAQAIAAUAAAAHAAAAAQAHAAUAAAAGAAAAAQAAAAAAAAAFAAAAAQAAAAAAAAAEAAAAAQAJAAUAAAADAAAAAQAIAAUAAAACAAAAAQAIAAUAAAAFAAQAAQAHAAQAAAAGAAQAAQAIAAQAAAAHAAQAAQAJAAQAAAAFAAUAAQAHAAUAAAAGAAUAAQAIAAUAAAD0/wQAAQAIAAUAAAD0/wUAAQAIAAUAAAD1/wQAAQAIAAUAAAD1/wUAAQAIAAUAAAADAPv/AQAIAAUAAAADAPr/AQAIAAUAAAADAPn/AQAIAAUAAAADAPj/AQAIAAUAAAADAPf/AQAIAAUAAAADAPb/AQAIAAUAAAACAPb/AQAIAAUAAAACAPf/AQAIAAUAAAACAPj/AQAIAAUAAAACAPn/AQAIAAUAAAACAPr/AQAIAAUAAAACAPv/AQAIAAUAAAABAPv/AQAIAAUAAAABAPr/AQAIAAUAAAABAPn/AQAIAAUAAAABAPj/AQAIAAUAAAABAPf/AQAIAAUAAAABAPb/AQAIAAUAAAAAAPb/AQAIAAUAAAAAAPf/AQAIAAUAAAAAAPj/AQAIAAUAAAAAAPn/AQAIAAUAAAAAAPr/AQAIAAUAAAAAAPv/AQAIAAUAAAD///v/AQAIAAUAAAD///r/AQAIAAUAAAD///n/AQAIAAUAAAD///j/AQAIAAUAAAD///f/AQAIAAUAAAD///b/AQAIAAUAAAD+//f/AQAIAAUAAAD+//j/AQAIAAUAAAD+//n/AQAIAAUAAAD+//r/AQAIAAUAAAD+//v/AQAIAAUAAAD9//v/AQAIAAUAAAD9//r/AQAIAAUAAAD9//n/AQAIAAUAAAD9//j/AQAIAAUAAAD+//b/AQAIAAUAAAD9//b/AQAIAAUAAAD9//f/AQAIAAUAAAD8//j/AQAIAAUAAAD8//f/AQAIAAUAAAD8//b/AQAIAAUAAAD8//n/AQAIAAUAAAD8//r/AQAIAAUAAAD8//v/AQAIAAUAAAAIAPv/AQAIAAUAAAAIAPr/AQAIAAUAAAAIAPn/AQAIAAUAAAAIAPj/AQAIAAUAAAAIAPf/AQAIAAUAAAAIAPb/AQAIAAUAAAAJAPb/AQAIAAUAAAAKAPb/AQAIAAUAAAALAPb/AQAIAAUAAAALAPf/AQAIAAUAAAAMAPf/AQAIAAUAAAAMAPj/AQAIAAUAAAAMAPn/AQAIAAUAAAAMAPr/AQAIAAUAAAAMAPv/AQAIAAUAAAAJAPv/AQAIAAUAAAAJAPr/AQAIAAUAAAAJAPn/AQAIAAUAAAAJAPj/AQAIAAUAAAAJAPf/AQAIAAUAAAAKAPf/AQAIAAUAAAALAPj/AQAIAAUAAAALAPn/AQAIAAUAAAALAPr/AQAIAAUAAAALAPv/AQAIAAUAAAAKAPv/AQAIAAUAAAAKAPr/AQAIAAUAAAAKAPn/AQAIAAUAAAAKAPj/AQAIAAUAAAAMAPb/AQAIAAUAAAANAPj/AQAIAAUAAAANAPb/AQAIAAUAAAANAPf/AQAIAAUAAAANAPn/AQAIAAUAAAANAPr/AQAIAAUAAAANAPv/AQAIAAUAAAANAPz/AQAIAAUAAAANAP3/AQAIAAUAAAANAP7/AQAIAAUAAAANAP//AQAIAAUAAAAHAPv/AQAHAAUAAAAHAPr/AQAHAAUAAAAHAPn/AQAHAAUAAAAHAPj/AQAHAAUAAAAHAPf/AQAHAAUAAAAHAPb/AQAHAAUAAAAEAPv/AQAJAAUAAAAEAPr/AQAJAAUAAAAEAPn/AQAJAAUAAAAEAPj/AQAJAAUAAAAEAPf/AQAJAAUAAAAEAPb/AQAJAAUAAAA=") diff --git a/top.gd b/top.gd index 005bca8..a4051b0 100644 --- a/top.gd +++ b/top.gd @@ -5,10 +5,6 @@ extends Node2D var save_state_path = "user://save_state.cfg" var save_state = ConfigFile.new() -var _transition_room: Node -var _transition_door_name: Variant # String or null - -# Called when the node enters the scene tree for the first time. func _ready() -> void: var room = initial_room.instantiate() room.name = "ActiveRoom" @@ -21,65 +17,16 @@ func _ready() -> void: save_state.set_value("items", "test_item", true) save_state.save(save_state_path) print(OS.get_data_dir()) - -func is_transitioning() -> bool: - return _transition_room != null - -func room_transition(from_door: Door, to_room_path: String, door_name: Variant): - # 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 = 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 - $TransitionCanvas/AnimationPlayer.play("room_trans_start") - - var room = ResourceLoader.load(to_room_path) - _transition_room = room.instantiate() - _transition_door_name = door_name +func save(): + save_state.save("user://save_state.cfg") -func _transition_start(): - #print_debug("_transition_start") +func replace_active_room(new_room: Node, on_changed: Callable): var current_room = get_node("ActiveRoom") remove_child(current_room) current_room.queue_free() - # If the room hasn't loaded yet, loop until it is - while _transition_room == null: - await get_tree().create_timer(0.1).timeout - - var next_room: Node = _transition_room - next_room.name = "ActiveRoom" - #next_room.connect("ready", _on_room_changed) - next_room.connect("tree_entered", _on_room_changed) - next_room.process_mode = Node.PROCESS_MODE_PAUSABLE - add_child(next_room) - -func _on_room_changed(): - #print_debug("_on_room_changed") - var room = 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) - - $TransitionCanvas/AnimationPlayer.play("room_trans_end") - -func _transition_end(): - #print_debug("_transition_end") - _transition_room = null - _transition_door_name = null - - var room = get_node("ActiveRoom") - var player: Player = room.find_child("Player") - if player: - player.set_forced_input(null) - -func save(): - save_state.save("user://save_state.cfg") + new_room.name = "ActiveRoom" + new_room.connect("tree_entered", on_changed) + new_room.process_mode = Node.PROCESS_MODE_PAUSABLE + add_child(new_room) diff --git a/top.tscn b/top.tscn index 92486cc..189b724 100644 --- a/top.tscn +++ b/top.tscn @@ -1,109 +1,15 @@ -[gd_scene load_steps=8 format=3 uid="uid://cey3jxnpmommt"] +[gd_scene load_steps=5 format=3 uid="uid://cey3jxnpmommt"] [ext_resource type="Script" uid="uid://dxbspy72bg0db" path="res://top.gd" id="1_on2c2"] [ext_resource type="PackedScene" uid="uid://cjdhfl70fgt6m" path="res://room_main_menu.tscn" id="2_58ij3"] +[ext_resource type="PackedScene" uid="uid://c2shuyjjq06p8" path="res://transition_manager.tscn" id="3_2exal"] [ext_resource type="PackedScene" uid="uid://cseqghymhiyqo" path="res://map.tscn" id="3_58ij3"] -[sub_resource type="Animation" id="Animation_58ij3"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".:color") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Color(0, 0, 0, 0)] -} - -[sub_resource type="Animation" id="Animation_edsjh"] -resource_name = "room_trans_end" -length = 2.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".:color") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 2), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)] -} -tracks/1/type = "method" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("../..") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(2), -"transitions": PackedFloat32Array(1), -"values": [{ -"args": [], -"method": &"_transition_end" -}] -} - -[sub_resource type="Animation" id="Animation_2exal"] -resource_name = "room_trans_start" -length = 2.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".:color") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 2), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Color(0, 0, 0, 0), Color(0, 0, 0, 1)] -} -tracks/1/type = "method" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("../..") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(2), -"transitions": PackedFloat32Array(1), -"values": [{ -"args": [], -"method": &"_transition_start" -}] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_2exal"] -_data = { -&"RESET": SubResource("Animation_58ij3"), -&"room_trans_end": SubResource("Animation_edsjh"), -&"room_trans_start": SubResource("Animation_2exal") -} - [node name="Top" type="Node2D"] process_mode = 3 script = ExtResource("1_on2c2") initial_room = ExtResource("2_58ij3") -[node name="TransitionCanvas" type="CanvasLayer" parent="."] - -[node name="ColorRect" type="ColorRect" parent="TransitionCanvas"] -offset_right = 192.0 -offset_bottom = 108.0 -mouse_filter = 2 -color = Color(0, 0, 0, 0) - -[node name="AnimationPlayer" type="AnimationPlayer" parent="TransitionCanvas"] -root_node = NodePath("../ColorRect") -libraries = { -&"": SubResource("AnimationLibrary_2exal") -} -speed_scale = 3.0 +[node name="TransitionManager" parent="." instance=ExtResource("3_2exal")] [node name="Map" parent="." instance=ExtResource("3_58ij3")] diff --git a/transition_manager.gd b/transition_manager.gd new file mode 100644 index 0000000..d9a4a09 --- /dev/null +++ b/transition_manager.gd @@ -0,0 +1,55 @@ +class_name TransitionManager +extends CanvasLayer + +@onready var top: Top = get_tree().root.get_node("Top") + +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): + # 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 + +func _transition_start(): + #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.replace_active_room(_transition_room, _on_room_changed) + +func _on_room_changed(): + #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") + +func _transition_end(): + #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) diff --git a/transition_manager.gd.uid b/transition_manager.gd.uid new file mode 100644 index 0000000..aedf462 --- /dev/null +++ b/transition_manager.gd.uid @@ -0,0 +1 @@ +uid://kfbrnj68jtyf diff --git a/transition_manager.tscn b/transition_manager.tscn new file mode 100644 index 0000000..3389dd1 --- /dev/null +++ b/transition_manager.tscn @@ -0,0 +1,101 @@ +[gd_scene load_steps=6 format=3 uid="uid://c2shuyjjq06p8"] + +[ext_resource type="Script" uid="uid://kfbrnj68jtyf" path="res://transition_manager.gd" id="1_xqma1"] + +[sub_resource type="Animation" id="Animation_58ij3"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:color") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(0, 0, 0, 0)] +} + +[sub_resource type="Animation" id="Animation_edsjh"] +resource_name = "room_trans_end" +length = 2.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:color") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)] +} +tracks/1/type = "method" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("..") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(2), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"_transition_end" +}] +} + +[sub_resource type="Animation" id="Animation_2exal"] +resource_name = "room_trans_start" +length = 2.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:color") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(0, 0, 0, 0), Color(0, 0, 0, 1)] +} +tracks/1/type = "method" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("..") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(2), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"_transition_start" +}] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_2exal"] +_data = { +&"RESET": SubResource("Animation_58ij3"), +&"room_trans_end": SubResource("Animation_edsjh"), +&"room_trans_start": SubResource("Animation_2exal") +} + +[node name="TransitionManager" type="CanvasLayer"] +script = ExtResource("1_xqma1") + +[node name="ColorRect" type="ColorRect" parent="."] +offset_right = 192.0 +offset_bottom = 108.0 +mouse_filter = 2 +color = Color(0, 0, 0, 0) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +root_node = NodePath("../ColorRect") +libraries = { +&"": SubResource("AnimationLibrary_2exal") +} +speed_scale = 3.0 -- cgit v1.3