diff --git a/scripts/wardrobe.gd b/scripts/wardrobe.gd index 4741a96..0e9ab73 100644 --- a/scripts/wardrobe.gd +++ b/scripts/wardrobe.gd @@ -9,24 +9,7 @@ onready var shirts_grid = $Shirts/ShirtsScroll/ShirtsGrid onready var undies_grid = $Underwear/UndiesScroll/UndiesGrid onready var accs_grid = $Accessoires/AccsScroll/AccsGrid -func list_files_in_directory(path): - var files = [] - var dir = Directory.new() - dir.open(path) - dir.list_dir_begin() - - while true: - var file = dir.get_next() - if file == "": - break - elif not file.begins_with("."): - files.append(file) - - dir.list_dir_end() - - return files - -func check_for_dlc(dlc_pack): +func get_dlc(dlc_pack, scenes: Array): var usr_dir = "user://dlc/" var dlc_path = usr_dir + dlc_pack var load_pck = ProjectSettings.load_resource_pack(dlc_path, false) @@ -34,44 +17,24 @@ func check_for_dlc(dlc_pack): # Check if the DLC is actually there if load_pck == true: - - # Loads the DLC + # Load the DLC ProjectSettings.load_resource_pack(dlc_path, false) - var dir = Directory.new() - dir.list_dir_begin() - - # Lists the files in each of their respective directories - var shirts_dir = "res://scenes/dlc/shirts/" - var pants_dir = "res://scenes/dlc/pants/" - var undies_dir = "res://scenes/dlc/undies/" - var dlc_shirts = list_files_in_directory(shirts_dir) - var dlc_pants = list_files_in_directory(pants_dir) - var dlc_undies = list_files_in_directory(undies_dir) - - # Make sure each file actually exist, instance them - # and add them to their respective tabs - for shirt in dlc_shirts: - if dir.file_exists(shirts_dir + shirt): - var init = load(shirts_dir + shirt).instance() + # Initialize and add nodes from each tab + for scene in scenes: + var dlc_scene = "res://scenes/dlc/" + scene + var init = load(dlc_scene).instance() + + if "shirts" in scene: shirts_grid.add_child(init) - print_debug("Initialized: " + shirts_dir + shirt) + print_debug("Initialized: " + dlc_scene) - for pants in dlc_pants: - if dir.file_exists(pants_dir + pants): - var init = load(pants_dir + pants).instance() - shirts_grid.add_child(init) - print_debug("Initialized: " + pants_dir + pants) - - for undies in dlc_undies: - if dir.file_exists(undies_dir + undies): - var init = load(undies_dir + undies).instance() - shirts_grid.add_child(init) - print_debug("Initialized: " + undies_dir + undies) + if "pants" in scene: + pants_grid.add_child(init) + print_debug("Initialized: " + dlc_scene) func _ready(): -# check_for_dlc("testdlc.pck") - pass + get_dlc("testdlc.pck", ["shirts/TestShirts.tscn"]) func _on_removeAccessory_pressed(): character.accessory = blank_top