1
0
Fork 0
mirror of https://github.com/tonytins/dressupzack synced 2025-05-06 21:54:48 -04:00

Load DLC from respective directories

So, my initial idea didn't pan out the way I thought. Now check_for_dlc() will traverse through DLC directories . and load the buttons if it's found.
This commit is contained in:
Anthony Foxclaw 2020-07-06 04:33:01 -04:00
parent 0d280d61e0
commit fce9a95c0e

View file

@ -9,7 +9,24 @@ onready var shirts_grid = $Shirts/ShirtsScroll/ShirtsGrid
onready var undies_grid = $Underwear/UndiesScroll/UndiesGrid
onready var accs_grid = $Accessoires/AccsScroll/AccsGrid
func get_dlc(dlc_pack, scenes: Array):
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):
var usr_dir = "user://dlc/"
var dlc_path = usr_dir + dlc_pack
var load_pck = ProjectSettings.load_resource_pack(dlc_path, false)
@ -20,21 +37,38 @@ func get_dlc(dlc_pack, scenes: Array):
# Load the DLC
ProjectSettings.load_resource_pack(dlc_path, false)
# 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:
# Locates
var dir = Directory.new()
dir.list_dir_begin()
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)
# Initialize and add nodes from each tab
for shirt in dlc_shirts:
if dir.file_exists(shirts_dir + shirt):
var init = load(shirts_dir + shirt).instance()
shirts_grid.add_child(init)
print_debug("Initialized: " + dlc_scene)
print_debug("Initialized: " + shirts_dir + shirt)
if "pants" in scene:
pants_grid.add_child(init)
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)
func _ready():
get_dlc("testdlc.pck", ["shirts/TestShirts.tscn"])
# check_for_dlc("testdlc.pck")
pass
func _on_removeAccessory_pressed():
character.accessory = blank_top