LevelInfo fixes and camera cleanup

This commit is contained in:
Dustin 2025-04-20 21:47:46 -07:00
parent ecc4c22fe0
commit ed9909ed7e
2 changed files with 13 additions and 19 deletions

View File

@ -58,7 +58,6 @@ position = Vector2( 160, 90 )
collision_layer = 0 collision_layer = 0
collision_mask = 256 collision_mask = 256
script = ExtResource( 1 ) script = ExtResource( 1 )
debug_camera_guide = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="ViewportContainer/Viewport/CameraGuide"] [node name="CollisionShape2D" type="CollisionShape2D" parent="ViewportContainer/Viewport/CameraGuide"]
visible = false visible = false

View File

@ -1,9 +1,12 @@
extends Node extends Node
## LevelInfo
# Intended to allow nodes to get info about game levels and aid
# in transition of levels.
# Resets the camera, translates start position for players from
# the previously loaded level to the new one.
# Also invokes scene transition while nodes load.
# Declare member variables here. Examples:
# var a = 2
# var b = "text"
##TODO: Should be based on screen position for starter ##TODO: Should be based on screen position for starter
onready var player_start_position := Vector2(50,50) onready var player_start_position := Vector2(50,50)
@ -65,25 +68,17 @@ func change_level(_level_name :String, _position_name :String):
#SceneTransition.transition_dissolve("foo") #SceneTransition.transition_dissolve("foo")
#yield(SceneTransition,"done") #yield(SceneTransition,"done")
yield(SceneTransition.transition_dissolve(), "completed") yield(SceneTransition.transition_dissolve(), "completed")
print(l) if (main.debug_singletons):
print(l)
viewport.remove_child(l) viewport.remove_child(l)
viewport.add_child(new_level) viewport.add_child(new_level)
##TODO: make this right below scene transition viewport.move_child(new_level,SceneTransition.get_index() + 1)
viewport.move_child(new_level,2)
#get_node("/root/Main/ViewportContainer/Viewport/World").remove_child(l)
#get_node("/root/Main/ViewportContainer/Viewport/World").add_child(new_level)
#get_node("/root/Main/ViewportContainer/Viewport/World").move_child(new_level,1)
##TODO: Probably set start position ##TODO: Probably set start position
if new_level.entrances.has(_position_name): if new_level.entrances.has(_position_name):
player_start_position = new_level.entrances[_position_name].transform.origin player_start_position = new_level.entrances[_position_name].transform.origin
#print (get_node("/root/Main/ViewportContainer/Viewport").get_children())
#get_node("/root/Main/ViewportContainer/Viewport/CameraGuide").global_position = Vector2(160,90)
SceneTransition.reset()
camera_guide.transform.origin = Vector2(160,90)
camera_guide.enable_tracking()
#get_node("/root/Main").add_child_below_node(SceneTransition,new_level)
SceneTransition.reset()
#camera_guide.transform.origin = Vector2(160,90)
camera_guide.reset_position()
camera_guide.enable_tracking()
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
# pass