Add remove_ methods for all overlays
i don't know why i forgot them in #1
This commit is contained in:
parent
b6a97946f0
commit
2b757dd64e
1 changed files with 56 additions and 1 deletions
57
smgr.gd
57
smgr.gd
|
@ -69,7 +69,7 @@ func add_debug(resource_name:String) -> int:
|
||||||
if debug_overlay_scene.has(resource_name) and !debug_overlay.get_children().has(resource):
|
if debug_overlay_scene.has(resource_name) and !debug_overlay.get_children().has(resource):
|
||||||
core.exception("SceneManager","debug_overlay does not contain \"" + resource_name + "\" but debug_overlay_scene does")
|
core.exception("SceneManager","debug_overlay does not contain \"" + resource_name + "\" but debug_overlay_scene does")
|
||||||
return core.Errors.CORE_EXCEPTION
|
return core.Errors.CORE_EXCEPTION
|
||||||
# Add scene to debug overlay
|
resource.name = resource_name
|
||||||
debug_overlay.add_child(resource)
|
debug_overlay.add_child(resource)
|
||||||
debug_overlay_scene.merge({resource_name:resource},true)
|
debug_overlay_scene.merge({resource_name:resource},true)
|
||||||
return core.Errors.OK
|
return core.Errors.OK
|
||||||
|
@ -97,6 +97,7 @@ func add_menu(resource_name:String) -> int:
|
||||||
if menu_overlay_scene.has(resource_name) and !menu_overlay.get_children().has(resource):
|
if menu_overlay_scene.has(resource_name) and !menu_overlay.get_children().has(resource):
|
||||||
core.exception("SceneManager","menu_overlay does not contain \"" + resource_name + "\" but menu_overlay_scene does")
|
core.exception("SceneManager","menu_overlay does not contain \"" + resource_name + "\" but menu_overlay_scene does")
|
||||||
return core.Errors.CORE_EXCEPTION
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
resource.name = resource_name
|
||||||
menu_overlay.add_child(resource)
|
menu_overlay.add_child(resource)
|
||||||
menu_overlay_scene.merge({resource_name:resource},true)
|
menu_overlay_scene.merge({resource_name:resource},true)
|
||||||
return core.Errors.OK
|
return core.Errors.OK
|
||||||
|
@ -124,6 +125,7 @@ func add_cutscene(resource_name:String) -> int:
|
||||||
if cutscene_overlay_scene == resource_name and !cutscene_overlay.get_children().has(resource):
|
if cutscene_overlay_scene == resource_name and !cutscene_overlay.get_children().has(resource):
|
||||||
core.exception("SceneManager","cutscene_overlay does not contain \"" + resource_name + "\" but cutscene_overlay_scene does")
|
core.exception("SceneManager","cutscene_overlay does not contain \"" + resource_name + "\" but cutscene_overlay_scene does")
|
||||||
return core.Errors.CORE_EXCEPTION
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
resource.name = resource_name
|
||||||
cutscene_overlay.add_child(resource)
|
cutscene_overlay.add_child(resource)
|
||||||
cutscene_overlay_scene = resource_name
|
cutscene_overlay_scene = resource_name
|
||||||
return core.Errors.OK
|
return core.Errors.OK
|
||||||
|
@ -151,6 +153,59 @@ func add_action(resource_name:String) -> int:
|
||||||
if action_overlay_scene == resource_name and !action_overlay.get_children().has(resource):
|
if action_overlay_scene == resource_name and !action_overlay.get_children().has(resource):
|
||||||
core.exception("SceneManager","action_overlay does not contain \"" + resource_name + "\" but action_overlay_scene does")
|
core.exception("SceneManager","action_overlay does not contain \"" + resource_name + "\" but action_overlay_scene does")
|
||||||
return core.Errors.CORE_EXCEPTION
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
resource.name = resource_name
|
||||||
action_overlay.add_child(resource)
|
action_overlay.add_child(resource)
|
||||||
action_overlay_scene = resource_name
|
action_overlay_scene = resource_name
|
||||||
return core.Errors.OK
|
return core.Errors.OK
|
||||||
|
|
||||||
|
func remove_debug(resource_name:String) -> int:
|
||||||
|
if core.protection_mode: return core.Errors.CORE_PROTECTIONMODE
|
||||||
|
logger.diag("CORE/smgr.gd","Removing debug scene \"" + resource_name + "\"")
|
||||||
|
for child in debug_overlay.get_children():
|
||||||
|
if child.name == resource_name:
|
||||||
|
debug_overlay.remove_child(child)
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
core.exception("SceneManager","Could not remove \"" + resource_name + "\" from the debug overlay as debug_overlay does have a child with that name")
|
||||||
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
debug_overlay_scene.erase(resource_name)
|
||||||
|
return core.Errors.OK
|
||||||
|
|
||||||
|
func remove_cutscene(resource_name:String) -> int:
|
||||||
|
if core.protection_mode: return core.Errors.CORE_PROTECTIONMODE
|
||||||
|
logger.diag("CORE/smgr.gd","Removing cutscene scene \"" + resource_name + "\"")
|
||||||
|
for child in cutscene_overlay.get_children():
|
||||||
|
if child.name == resource_name:
|
||||||
|
cutscene_overlay.remove_child(child)
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
core.exception("SceneManager","Could not remove \"" + resource_name + "\" from the cutscene overlay as cutscene_overlay does have a child with that name")
|
||||||
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
cutscene_overlay_scene = ""
|
||||||
|
return core.Errors.OK
|
||||||
|
|
||||||
|
func remove_menu(resource_name:String) -> int:
|
||||||
|
if core.protection_mode: return core.Errors.CORE_PROTECTIONMODE
|
||||||
|
logger.diag("CORE/smgr.gd","Removing menu scene \"" + resource_name + "\"")
|
||||||
|
for child in menu_overlay.get_children():
|
||||||
|
if child.name == resource_name:
|
||||||
|
menu_overlay.remove_child(child)
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
core.exception("SceneManager","Could not remove \"" + resource_name + "\" from the menu overlay as menu_overlay does have a child with that name")
|
||||||
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
menu_overlay_scene.erase(resource_name)
|
||||||
|
return core.Errors.OK
|
||||||
|
|
||||||
|
func remove_action(resource_name:String) -> int:
|
||||||
|
if core.protection_mode: return core.Errors.CORE_PROTECTIONMODE
|
||||||
|
logger.diag("CORE/smgr.gd","Removing action scene \"" + resource_name + "\"")
|
||||||
|
for child in action_overlay.get_children():
|
||||||
|
if child.name == resource_name:
|
||||||
|
action_overlay.remove_child(child)
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
core.exception("SceneManager","Could not remove \"" + resource_name + "\" from the action overlay as action_overlay does have a child with that name")
|
||||||
|
return core.Errors.CORE_EXCEPTION
|
||||||
|
action_overlay_scene = ""
|
||||||
|
return core.Errors.OK
|
||||||
|
|
Loading…
Reference in a new issue