class_name CameraRoom extends Node2D @onready var phantom_camera2d: PhantomCamera2D = $PhantomCamera2D @onready var default_start_point: Node2D = $PlayerStartPoint @export var _room_id : int = -1 func _ready() -> void: #room_entrance.body_entered.connect(_handle_body_enter_room) RoomSystem.room_changed.connect(_handle_global_room_changed) ##绑定一个Room下面的room entrance到进入这个房间 for r in self.get_children(): if r is RoomEntrance: r.body_entered.connect(_handle_body_enter_room) r.init_room_entrance(self) func _handle_body_enter_room(body: Node2D) -> void: if RoomSystem.current_room_id == self._room_id: return if body != null: RoomSystem.update_current_room_id(self._room_id) return func _handle_global_room_changed(room_id: int) -> void: if room_id == self._room_id: _update_room_to_self() func reset_priority() -> void: phantom_camera2d.priority = 0 func _update_room_to_self() -> void: phantom_camera2d.priority = 99