func on_map_load(root): # Add the mastery to The Advanced. var collectable_prefab = preload("res://objects/nodes/collectable.tscn") var saver_prefab = preload("res://objects/nodes/saver.tscn") var tpl_prefab = preload("res://objects/nodes/listeners/teleportListener.tscn") var usl_prefab = preload("res://objects/nodes/listeners/unlockSetterListener.tscn") var mastery = collectable_prefab.instantiate() mastery.name = "collectable" mastery.position = Vector3(0, -200, -5) mastery.unlock_type = "smiley" mastery.material_override = load("res://assets/materials/gold.material") root.get_node("/root/scene/Components/Collectables").add_child.call_deferred(mastery) var tpl = tpl_prefab.instantiate() tpl.teleport_point = Vector3(0, 2, -5) tpl.teleport_rotate = Vector3(0, 0, 0) tpl.target_path = mastery tpl.name = "Teleport" tpl.senders.append(NodePath("/root/scene/Panels/Room_1/panel_29")) tpl.senders.append(NodePath("/root/scene/Panels/Room_1/panel_30")) tpl.senders.append(NodePath("/root/scene/Panels/Room_1/panel_31")) mastery.add_child.call_deferred(tpl) var usl = usl_prefab.instantiate() usl.name = "unlockSetterListenerMastery" usl.key = "advanced_mastery" usl.value = "unlocked" usl.senders.append(NodePath("/root/scene/Components/Collectables/collectable")) root.get_node("/root/scene/Components").add_child.call_deferred(usl) var saver = saver_prefab.instantiate() saver.name = "saver_collectables" saver.type = "collectables" saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) root.get_node("/root/scene").add_child.call_deferred(saver)