extends ConfirmationDialog var base_path = "user://saves/" func _ready(): if not DirAccess.dir_exists_absolute(base_path): DirAccess.make_dir_recursive_absolute(base_path) var dir = DirAccess.open("res://saves/") if dir: dir.list_dir_begin() var file_name = dir.get_next() while file_name != "": if dir.current_is_dir(): print("skip directory: " + file_name) else: print("copy file: " + file_name) DirAccess.copy_absolute("res://saves/"+file_name,"user://saves/"+file_name) file_name = dir.get_next() else: print("An error occurred when trying to access the path.") func _on_about_to_popup(): pass # Replace with function body. func _on_confirmed(): var filename=base_path+$LineEdit.text+".tscn" print("Save: "+filename) var packed_scene = PackedScene.new() set_owner_recursive($"../../Map",$"../../Map") if packed_scene.pack($"../../Map") == OK: var result = ResourceSaver.save(packed_scene,filename) if result != OK: print("Failed to save scene. Error #",result) else: print("Failed to pack scene.") func set_owner_recursive(node: Node, new_owner: Node): if node != new_owner: node.owner = new_owner for child in node.get_children(): set_owner_recursive(child, new_owner)