JHRGB/LoadDialog.gd
2023-12-05 19:04:21 +00:00

37 lines
1016 B
GDScript

extends ConfirmationDialog
func _on_about_to_popup():
$ItemList.clear()
#var dir = DirAccess.open("user://saves/")
var dir = DirAccess.open("user://saves/")
if dir:
dir.list_dir_begin()
var file_name = dir.get_next()
while file_name != "":
if dir.current_is_dir():
print("Found directory: " + file_name)
else:
print("Found file: " + file_name)
$ItemList.add_item(file_name)
file_name = dir.get_next()
else:
print("An error occurred when trying to access the path.")
func _on_confirmed():
# Get the Map node
var sim = get_tree().root.get_node("Sim")
var old_map = get_tree().root.get_node("Sim/Map")
# Load and instance the selected item
for item in $ItemList.get_selected_items():
print("load:", $ItemList.get_item_text(item))
var res = ResourceLoader.load("user://saves/" + $ItemList.get_item_text(item))
if res and res is PackedScene:
var instance = res.instantiate()
sim.remove_child(old_map)
sim.add_child(instance)
else:
print("Error loading")