From 9363600869d3fdabfe2118330f2cc4e08e8ff2a8 Mon Sep 17 00:00:00 2001 From: raphael60650 Date: Wed, 26 May 2021 16:56:45 +0200 Subject: [PATCH] added "Random" course in text file --- source/create_lecode_config.py | 3 ++- source/patch_bmg.py | 11 +++++++++-- source/translate.py | 4 ++++ translation.json | 2 +- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/source/create_lecode_config.py b/source/create_lecode_config.py index d36dcf6..75ace54 100644 --- a/source/create_lecode_config.py +++ b/source/create_lecode_config.py @@ -4,7 +4,8 @@ import json def create_lecode_config(self): with open("./ct_config.json") as f: ctconfig = json.load(f) - with open("./file/CTFILE.txt", "w") as ctfile, open("./file/RCTFILE.txt", "w") as rctfile: + with open("./file/CTFILE.txt", "w", encoding="utf-8") as ctfile, \ + open("./file/RCTFILE.txt", "w", encoding="utf-8") as rctfile: header = "#CT-CODE\n" +\ "[RACING-TRACK-LIST]\n" +\ diff --git a/source/patch_bmg.py b/source/patch_bmg.py index 5905a95..aa24eb3 100644 --- a/source/patch_bmg.py +++ b/source/patch_bmg.py @@ -14,9 +14,16 @@ def patch_bmg(self, gamefile): # gamefile est le fichier .szs trouvé dans le / trackheader = "#--- standard track names" trackend = "2328" bmgtracks = bmgtracks[bmgtracks.find(trackheader) + len(trackheader):bmgtracks.find(trackend)] + bmglang = gamefile[-len("E.txt"):-len(".txt")] # Langue du fichier with open("./file/ExtraCommon.txt", "w") as f: - f.write("#BMG\n\n") + f.write("#BMG\n\n" + f" 703e\t= {self.translate('Aléatoire: Toutes les pistes', lang=bmglang)}\n" + f" 703f\t= {self.translate('Aléatoire: Pistes Originales', lang=bmglang)}\n" + f" 7040\t= {self.translate('Aléatoire: Custom Tracks', lang=bmglang)}\n" + f" 7041\t= {self.translate('Aléatoire: Pistes Nouvelles', lang=bmglang)}\n") + + for bmgtrack in bmgtracks.split("\n"): if "=" in bmgtrack: @@ -33,7 +40,6 @@ def patch_bmg(self, gamefile): # gamefile est le fichier .szs trouvé dans le / f.write(f" {Tid}\t= {Tname}\n") - bmglang = gamefile[-len("E.txt"):-len(".txt")] # Langue du fichier bmgtext = subprocess.check_output(["tools/szs/wctct", "bmg", "--le-code", "--long", "./file/CTFILE.txt", "--patch-bmg", "OVERWRITE=" + gamefile + ".d/message/Common.bmg", "--patch-bmg", "OVERWRITE=./file/ExtraCommon.txt"], @@ -43,6 +49,7 @@ def patch_bmg(self, gamefile): # gamefile est le fichier .szs trouvé dans le / "--patch-bmg", "OVERWRITE=./file/ExtraCommon.txt"], creationflags=CREATE_NO_WINDOW) shutil.rmtree(gamefile + ".d") + os.remove("./file/ExtraCommon.txt") common_file = f"./file/Common_{bmglang}.txt" rcommon_file = f"./file/Common_R{bmglang}.txt" diff --git a/source/translate.py b/source/translate.py index 8be8385..166760f 100644 --- a/source/translate.py +++ b/source/translate.py @@ -3,6 +3,10 @@ import json def translate(self, text, lang = None): if lang == None: lang = self.language + elif lang == "E": lang = "en" + elif lang == "G": lang = "ge" + elif lang == "I": lang = "it" + elif lang == "S": lang = "sp" with open("./translation.json", encoding="utf-8") as f: translation = json.load(f) diff --git a/translation.json b/translation.json index 5439cba..c28e577 100644 --- a/translation.json +++ b/translation.json @@ -1 +1 @@ -{"en": {"MKWFaraphel Installateur": "MKWFaraphel Installer", "Jeu Wii": "Wii game", "Jeu original": "Original game", "Erreur": "Error", "Le chemin de fichier est invalide": "The file path in invalid", "Attention": "Warning", "Ce dossier sera \u00e9cras\u00e9 si vous installer le mod !\n\u00cates-vous s\u00fbr de vouloir l'utiliser ?": "This directory will be overwritten if you install the mod !\nAre you sure you want to use it ?", "Extraction du jeu...": "Extracting the game...", "Le type de fichier n'est pas reconnu": "This file type is not supported", "Cette ROM est d\u00e9j\u00e0 modd\u00e9, il est d\u00e9conseill\u00e9 de l'utiliser pour installer le mod": "This game is already modded, it is not recommended to use it to install the mod", "Extraire le fichier": "Extract file", "Preparer les fichiers": "Prepare files", "Action": "Action", "Installer le mod": "Install mod", "Dossier": "Directory", "Langage : ": "Language : ", "Mise \u00e0 jour disponible !": "Update available !", "Une mise \u00e0 jour est disponible, souhaitez-vous l'installer ?": "An update is available, do you want to install it ?", "T\u00e9l\u00e9chargement de Updater en cours...": "Downloading the Updater...", "fin du t\u00e9l\u00e9chargement, d\u00e9but de l'extraction...": "end of the download, extracting...", "fin de l'extraction": "finished extracting", "lancement de l'application...": "starting application...", "Modification de": "Modifying", "Recompilation de": "Recompilating", "Conversion en": "Converting to", "Changement de l'ID du jeu": "editing game's ID", "Fin": "End", "L'installation est termin\u00e9 !": "The mod has been installed !", "Conversion des fichiers": "Converting files", "Conversion des images": "Converting images", "Conversion des textes": "Converting texts", "Conversion des courses": "Converting races", "Configuration de LE-CODE": "Configurating LE-CODE"}, "selected": "fr"} \ No newline at end of file +{"en": {"Al\u00e9atoire: Toutes les pistes": "Random: All tracks", "Al\u00e9atoire: Pistes Originales": "Random: Original tracks", "Al\u00e9atoire: Custom Tracks": "Random: Custom Tracks", "Al\u00e9atoire: Pistes Nouvelles": "Random: New tracks", "MKWFaraphel Installateur": "MKWFaraphel Installer", "Jeu Wii": "Wii game", "Jeu original": "Original game", "Erreur": "Error", "Le chemin de fichier est invalide": "The file path in invalid", "Attention": "Warning", "Ce dossier sera \u00e9cras\u00e9 si vous installer le mod !\n\u00cates-vous s\u00fbr de vouloir l'utiliser ?": "This directory will be overwritten if you install the mod !\nAre you sure you want to use it ?", "Extraction du jeu...": "Extracting the game...", "Le type de fichier n'est pas reconnu": "This file type is not supported", "Cette ROM est d\u00e9j\u00e0 modd\u00e9, il est d\u00e9conseill\u00e9 de l'utiliser pour installer le mod": "This game is already modded, it is not recommended to use it to install the mod", "Extraire le fichier": "Extract file", "Preparer les fichiers": "Prepare files", "Action": "Action", "Installer le mod": "Install mod", "Dossier": "Directory", "Langage : ": "Language : ", "Mise \u00e0 jour disponible !": "Update available !", "Une mise \u00e0 jour est disponible, souhaitez-vous l'installer ?": "An update is available, do you want to install it ?", "T\u00e9l\u00e9chargement de Updater en cours...": "Downloading the Updater...", "fin du t\u00e9l\u00e9chargement, d\u00e9but de l'extraction...": "end of the download, extracting...", "fin de l'extraction": "finished extracting", "lancement de l'application...": "starting application...", "Modification de": "Modifying", "Recompilation de": "Recompilating", "Conversion en": "Converting to", "Changement de l'ID du jeu": "editing game's ID", "Fin": "End", "L'installation est termin\u00e9 !": "The mod has been installed !", "Conversion des fichiers": "Converting files", "Conversion des images": "Converting images", "Conversion des textes": "Converting texts", "Conversion des courses": "Converting races", "Configuration de LE-CODE": "Configurating LE-CODE"}, "ge": {"Al\u00e9atoire: Toutes les pistes": "Zuf\u00e4llig: Alle Spuren", "Al\u00e9atoire: Pistes Originales": "Zuf\u00e4llig: Original-Spuren", "Al\u00e9atoire: Custom Tracks": "Zuf\u00e4llig: Custom Tracks", "Al\u00e9atoire: Pistes Nouvelles": "Zuf\u00e4llig: Neue Spuren"}, "it": {"Al\u00e9atoire: Toutes les pistes": "Casuale: Tutte le tracce", "Al\u00e9atoire: Pistes Originales": "Casuale: Tracce originali", "Al\u00e9atoire: Custom Tracks": "Casuale: Custom Tracks", "Al\u00e9atoire: Pistes Nouvelles": "Casuale: Nuovi brani"}, "sp": {"Al\u00e9atoire: Toutes les pistes": "Aleatorio: Todas las pistas", "Al\u00e9atoire: Pistes Originales": "Aleatorio: Pistas originales", "Al\u00e9atoire: Custom Tracks": "Aleatorio: Custom Tracks", "Al\u00e9atoire: Pistes Nouvelles": "Aleatorio: Pistas nuevas"}, "selected": "fr"} \ No newline at end of file