prog on scenes

This commit is contained in:
2026-01-09 13:12:32 -06:00
parent ba61ab90a5
commit 16b96de507

View File

@@ -12,23 +12,41 @@ func _enter_tree() -> void:
func _exit_tree() -> void: func _exit_tree() -> void:
push_error("RootScene should not be removed from the scene tree. This is a bug.") push_error("RootScene should not be removed from the scene tree. This is a bug.")
func removeAndHide(node:Node3D) -> void:
if node && node.get_parent() == self:
remove_child(node)
node.visible = false
func addAndShow(node:Node3D) -> void:
if node:
add_child(node)
node.visible = true
func onSceneChange(newScene:SceneSingleton.SceneType) -> void: func onSceneChange(newScene:SceneSingleton.SceneType) -> void:
print("overworld", overworld)
if overworld && overworld.get_parent() == self:
remove_child(overworld)
remove_child(initial)
overworld.visible = false
initial.visible = false
match newScene: match newScene:
SceneSingleton.SceneType.INITIAL: SceneSingleton.SceneType.INITIAL:
add_child(initial) removeAndHide(overworld)
initial.visible = true removeAndHide(battle)
removeAndHide(cooking)
addAndShow(initial)
SceneSingleton.SceneType.OVERWORLD: SceneSingleton.SceneType.OVERWORLD:
add_child(overworld) removeAndHide(initial)
overworld.visible = true removeAndHide(battle)
removeAndHide(cooking)
addAndShow(overworld)
SceneSingleton.SceneType.BATTLE:
removeAndHide(initial)
removeAndHide(overworld)
removeAndHide(cooking)
addAndShow(battle)
SceneSingleton.SceneType.COOKING:
removeAndHide(initial)
removeAndHide(overworld)
removeAndHide(battle)
addAndShow(cooking)
SceneSingleton.SceneType.UNSET: SceneSingleton.SceneType.UNSET:
pass pass