34 lines
890 B
GDScript
34 lines
890 B
GDScript
extends ConfirmationDialog
|
|
|
|
func _ready():
|
|
get_tree().root.get_node("Sim/Map").load_map("user://saves/default")
|
|
|
|
func _on_about_to_popup():
|
|
$ItemList.clear()
|
|
var dir = DirAccess.open("user://saves/")
|
|
var file_names = []
|
|
|
|
if dir:
|
|
dir.list_dir_begin()
|
|
var file_name = dir.get_next()
|
|
while file_name != "":
|
|
if !dir.current_is_dir():
|
|
file_names.append(file_name)
|
|
file_name = dir.get_next()
|
|
dir.list_dir_end()
|
|
|
|
file_names.sort() # Sort the file names
|
|
for f in file_names:
|
|
$ItemList.add_item(f)
|
|
else:
|
|
print("An error occurred when trying to access the path.")
|
|
|
|
func _on_confirmed():
|
|
# Load and instance the first selected item
|
|
for item in $ItemList.get_selected_items():
|
|
$"../SaveDialog/LineEdit".text=$ItemList.get_item_text(item)
|
|
var filename = "user://saves/" + $ItemList.get_item_text(item)
|
|
print("load:", filename)
|
|
%Map.load_map(filename)
|
|
break
|