extends Node2D @export var starting_position: Vector2 @export var fade_in_from_door: bool = false @onready var player = get_tree().get_first_node_in_group("player") func _ready() -> void: SoundManager.play_background("Boss") if starting_position: player.visual_position = starting_position player.get_node("Camera2D").limit_top = $Wall.get_wall_limits().top player.get_node("Camera2D").limit_bottom = $Wall.get_wall_limits().bottom player.get_node("Camera2D").limit_left = $Wall.get_wall_limits().left player.get_node("Camera2D").limit_right = $Wall.get_wall_limits().right if fade_in_from_door: player.current_state = player.state_exit_door() player.get_node("AnimatedSprite2D").self_modulate = Color(0,0,0,1) var tween = get_tree().create_tween() tween.tween_property( player.get_node("AnimatedSprite2D"), "self_modulate", Color(1,1,1,1), 0.3 ) Game.boss_defeated.connect(func(): SoundManager.play_background("Win") await SoundManager.current_background.finished Game.transition_to_scene("res://FloatIslandsIntro.tscn") )