From c51bca1775fa429d1281f81a820c8884cb7de1bf Mon Sep 17 00:00:00 2001 From: TVanteeffelen Date: Sun, 4 Jan 2026 12:43:48 -0500 Subject: [PATCH] Starting work on level transition fade. --- Scenes/fade.tscn | 11 +++++++++++ Scenes/player.tscn | 11 ++++++++++- Scripts/player.gd | 7 ++++++- Scripts/player_camera.gd | 1 + 4 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 Scenes/fade.tscn diff --git a/Scenes/fade.tscn b/Scenes/fade.tscn new file mode 100644 index 0000000..ff60f53 --- /dev/null +++ b/Scenes/fade.tscn @@ -0,0 +1,11 @@ +[gd_scene format=3 uid="uid://ci0yqv1tna0ph"] + +[node name="Fade" type="CanvasLayer"] + +[node name="ColorRect" type="ColorRect" parent="."] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(1, 1, 1, 0) diff --git a/Scenes/player.tscn b/Scenes/player.tscn index a76f44d..d0d3acb 100644 --- a/Scenes/player.tscn +++ b/Scenes/player.tscn @@ -30,7 +30,16 @@ rect = Rect2(-8, -8, 16, 16) [node name="Camera" type="Camera2D" parent="."] top_level = true -zoom = Vector2(2.5, 2.5) script = ExtResource("4_vgqql") +[node name="Fade" type="CanvasLayer" parent="."] + +[node name="Rectangle" type="ColorRect" parent="Fade"] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(1, 1, 1, 0) + [connection signal="screen_exited" from="VisibleOnScreenNotifier2D" to="." method="_on_visible_on_screen_notifier_2d_screen_exited"] diff --git a/Scripts/player.gd b/Scripts/player.gd index 467d280..2dab165 100644 --- a/Scripts/player.gd +++ b/Scripts/player.gd @@ -3,6 +3,7 @@ extends CharacterBody2D @onready var tile_layer : TileMapLayer = $"../TileMapLayer" @onready var level : Node2D = $".." @onready var particles : GPUParticles2D = $GPUParticles2D +@onready var fade : ColorRect = $Fade/Rectangle @export_category("Movement") @export var acceleration : float = 50 @@ -57,7 +58,7 @@ func tilemap_detection() -> void: #Checks for exits. var exit_data = tile_data.get_custom_data("exit") if exit_data == true: - get_tree().change_scene_to_file(level.next_level) #Pulls next level data from parent Node2D. + next_level(level.next_level) #Pulls next level data from parent Node2D. func death(fallen: bool) -> void: dead = true @@ -78,6 +79,10 @@ func respawn() -> void: position.x = level.startPosX position.y = level.startPosY +func next_level(level : String): + dead == true + get_tree().change_scene_to_file(level) + func _on_visible_on_screen_notifier_2d_screen_exited() -> void: if !dead: death(true) diff --git a/Scripts/player_camera.gd b/Scripts/player_camera.gd index 5fbc8c4..d795c2e 100644 --- a/Scripts/player_camera.gd +++ b/Scripts/player_camera.gd @@ -12,3 +12,4 @@ func _ready() -> void: func _physics_process(delta: float) -> void: position.x = lerp(position.x, player.position.x, camera_speed * delta) position.y = lerp(position.y, player.position.y, camera_speed * delta) +