From 08b49022ffc4e4d85e6906f37688b17b278bcabe Mon Sep 17 00:00:00 2001 From: Dustin Date: Sun, 20 Apr 2025 21:17:57 -0700 Subject: [PATCH] Cleanup CameraGuide and SceneTransition --- Main.tscn | 1 + lib/singleton_autoloads/LevelInfo.gd | 2 +- project.godot | 6 ++++++ src/classes/camera_guide.gd | 19 +++++++++++------ src/ui/scene_transition.gd | 31 ---------------------------- src/ui/scene_transition.tscn | 2 +- 6 files changed, 22 insertions(+), 39 deletions(-) delete mode 100644 src/ui/scene_transition.gd diff --git a/Main.tscn b/Main.tscn index 4d92da8..c09b6c5 100644 --- a/Main.tscn +++ b/Main.tscn @@ -56,6 +56,7 @@ position = Vector2( 160, 90 ) collision_layer = 0 collision_mask = 256 script = ExtResource( 1 ) +debug_camera_guide = true [node name="CollisionShape2D" type="CollisionShape2D" parent="ViewportContainer/Viewport/CameraGuide"] visible = false diff --git a/lib/singleton_autoloads/LevelInfo.gd b/lib/singleton_autoloads/LevelInfo.gd index 3d1b93a..7b9b081 100644 --- a/lib/singleton_autoloads/LevelInfo.gd +++ b/lib/singleton_autoloads/LevelInfo.gd @@ -57,7 +57,7 @@ func change_level(_level_name :String, _position_name :String): # No more errors but I'd like to know how to do this. #SceneTransition.transition_dissolve("foo") #yield(SceneTransition,"done") - yield(SceneTransition.transition_dissolve("foo"), "completed") + yield(SceneTransition.transition_dissolve(), "completed") print(l) viewport.remove_child(l) viewport.add_child(new_level) diff --git a/project.godot b/project.godot index 44825bf..8ee95cd 100644 --- a/project.godot +++ b/project.godot @@ -109,6 +109,11 @@ _global_script_classes=[ { "language": "GDScript", "path": "res://lib/classes/sound_effect_state_frame.gd" }, { +"base": "CanvasLayer", +"class": "SceneTransitions", +"language": "GDScript", +"path": "res://src/classes/scene_transition.gd" +}, { "base": "Node", "class": "StaminaComponent", "language": "GDScript", @@ -170,6 +175,7 @@ _global_script_class_icons={ "PlayerData": "", "Projectile": "", "SE_StateFrame": "", +"SceneTransitions": "", "StaminaComponent": "", "State": "", "StateAnimatedActor": "", diff --git a/src/classes/camera_guide.gd b/src/classes/camera_guide.gd index bf33d9e..eccf022 100644 --- a/src/classes/camera_guide.gd +++ b/src/classes/camera_guide.gd @@ -1,20 +1,27 @@ class_name CameraGuide extends KinematicBody2D +export var debug_camera_guide :bool = false -# Declare member variables here. Examples: -# var a = 2 -# var b = "text" -var game_size := Vector2(320,180) -onready var window_scale :float = (OS.window_size / game_size).x +var game_size :Vector2 +onready var window_scale :float +onready var viewport = $"%Viewport" var _is_tracking :bool = true # Called when the node enters the scene tree for the first time. func _ready(): + game_size = viewport.size + window_scale = (OS.window_size / game_size).x + assert(game_size != Vector2(0,0), str(get_path()) + " : No game_size set.") + if debug_camera_guide: + print(get_path(), "\n", + "\tSize:", game_size, + "\tScale:", window_scale) ## Do not track until told to disable_tracking() + func enable_tracking() -> void: ##TODO: add extra collission checks here to make sure we aren't stuck maybe? _is_tracking = true @@ -30,7 +37,7 @@ func reset_position() -> void: var flip_tracker = 0.0 var stuck_check: bool -func _physics_process(delta): +func _physics_process(_delta): var pos = global_position #pos = pos.move_toward(PlayerInfo.player_position, delta) #pos = lerp(pos, PlayerInfo.player_position, delta ) diff --git a/src/ui/scene_transition.gd b/src/ui/scene_transition.gd deleted file mode 100644 index 5e9efb7..0000000 --- a/src/ui/scene_transition.gd +++ /dev/null @@ -1,31 +0,0 @@ -extends CanvasLayer - -signal done - -#func change_scene(target: String, type: String = 'dissolve') -> void: -# if type == 'dissolve': -# transition_dissolve(target) -# else: -# transition_clouds(target) - -var animation_name = '' - -func reset(): - $AnimationPlayer.play_backwards(animation_name) - emit_signal("done") - -func transition_dissolve(target: String) -> void: - animation_name = 'dissolve' - $AnimationPlayer.play('dissolve') - yield($AnimationPlayer,'animation_finished') - emit_signal("done") - #get_tree().change_scene(target) - #$AnimationPlayer.play_backwards('dissolve') - -func transition_clouds(target: String) -> void: - animation_name = 'clouds_out' - $AnimationPlayer.play('clouds_in') - yield($AnimationPlayer,'animation_finished') - emit_signal("done") - #get_tree().change_scene(target) - #$AnimationPlayer.play('clouds_out') diff --git a/src/ui/scene_transition.tscn b/src/ui/scene_transition.tscn index ac9c45b..1aaa241 100644 --- a/src/ui/scene_transition.tscn +++ b/src/ui/scene_transition.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=7 format=2] -[ext_resource path="res://src/ui/scene_transition.gd" type="Script" id=1] +[ext_resource path="res://src/classes/scene_transition.gd" type="Script" id=1] [ext_resource path="res://assets/UI/transition_screen.png" type="Texture" id=2] [sub_resource type="Animation" id=1]