summaryrefslogtreecommitdiff
path: root/float_islands.gd
diff options
context:
space:
mode:
Diffstat (limited to 'float_islands.gd')
-rw-r--r--float_islands.gd35
1 files changed, 35 insertions, 0 deletions
diff --git a/float_islands.gd b/float_islands.gd
new file mode 100644
index 0000000..d038570
--- /dev/null
+++ b/float_islands.gd
@@ -0,0 +1,35 @@
+extends Node2D
+
+
+@export var starting_position: Vector2
+@export var fade_in: bool = false
+@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("FloatIslands")
+
+ if starting_position:
+ player.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:
+ var tween = Game.fade_in_screen()
+
+ if fade_in_from_door:
+ player.current_state = player.state_exit_door()
+ player.get_node("AnimatedSprite2D").self_modulate = Color(0,0,0,1)
+
+ tween.set_parallel()
+ tween.tween_property(
+ player.get_node("AnimatedSprite2D"),
+ "self_modulate",
+ Color(1,1,1,1),
+ 0.3
+ ).set_delay(0.1)