prog on scenes
This commit is contained in:
@@ -12,23 +12,41 @@ func _enter_tree() -> void:
|
||||
func _exit_tree() -> void:
|
||||
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:
|
||||
print("overworld", overworld)
|
||||
if overworld && overworld.get_parent() == self:
|
||||
remove_child(overworld)
|
||||
remove_child(initial)
|
||||
|
||||
overworld.visible = false
|
||||
initial.visible = false
|
||||
|
||||
match newScene:
|
||||
SceneSingleton.SceneType.INITIAL:
|
||||
add_child(initial)
|
||||
initial.visible = true
|
||||
removeAndHide(overworld)
|
||||
removeAndHide(battle)
|
||||
removeAndHide(cooking)
|
||||
addAndShow(initial)
|
||||
|
||||
SceneSingleton.SceneType.OVERWORLD:
|
||||
add_child(overworld)
|
||||
overworld.visible = true
|
||||
removeAndHide(initial)
|
||||
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:
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user