Added an experimental support for MyStuff

This commit is contained in:
raphael60650 2021-10-29 16:15:13 +02:00
parent a3c31cad5b
commit d65ef8c08f
2 changed files with 21 additions and 2 deletions

View file

@ -187,10 +187,18 @@ class Game:
for ffp in fs[fp][nf]: count_rf(path=f)
###
extracted_file = []
max_step += 4 # PATCH main.dol and PATCH lecode.bin, converting, changing ID
self.gui.progress(show=True, indeter=False, statut=self.gui.translate("Installing mod"), max=max_step,
max_step += 5 # PATCH main.dol and PATCH lecode.bin, converting, changing ID, copying MyStuff Folder
self.gui.progress(show=True, indeter=False, statut=self.gui.translate("Copying MyStuff"), max=max_step,
step=0)
mystuff_folder = self.gui.stringvar_mystuff_folder.get()
if mystuff_folder and mystuff_folder != "None":
shutil.copytree(mystuff_folder, self.path + "/files/", dirs_exist_ok=True)
self.gui.progress(show=True, indeter=False, statut=self.gui.translate("Installing mod"),
add=1)
def replace_file(path, file, subpath="/") -> None:
"""
Replace subfile in the .szs file

View file

@ -40,6 +40,7 @@ class Gui:
self.stringvar_mark_track_from_version = StringVar(value="None")
self.stringvar_sort_track_by = StringVar(value="name")
self.boolvar_use_debug_mode = BooleanVar(value=False)
self.stringvar_mystuff_folder = StringVar(value=None)
self.root.title(self.translate("MKWFaraphel Installer"))
self.root.resizable(False, False)
@ -85,6 +86,16 @@ class Gui:
self.menu_advanced.add_checkbutton(label=self.translate("Don't check for update"), variable=self.boolvar_dont_check_for_update, command=lambda: self.option.edit("dont_check_for_update", self.boolvar_dont_check_for_update))
self.menu_advanced.add_checkbutton(label=self.translate("Use debug mode"), variable=self.boolvar_use_debug_mode)
def select_mystuff_folder(index, init=False):
self.stringvar_mystuff_folder.set(None)
if not init:
mystuff_dir = filedialog.askdirectory()
if mystuff_dir: self.stringvar_mystuff_folder.set(mystuff_dir)
self.menu_advanced.entryconfig(index, label=f"Apply MyStuff Folder ({self.stringvar_mystuff_folder.get()!r} selected)")
self.menu_advanced.add_command(command=lambda index=self.menu_advanced.index("end")+1: select_mystuff_folder(index))
select_mystuff_folder(self.menu_advanced.index("end"), init=True)
self.menu_advanced.add_separator()
self.menu_advanced.add_command(label=self.translate("Number of track conversion process", " :"))
self.menu_advanced.add_radiobutton(label=self.translate("1 ", "process"), variable=self.intvar_process_track, value=1, command=lambda: self.option.edit("process_track", 1))