#!/usr/bin/env python3 # -*- coding: utf-8 -*- # -*- mode: python-mode; python-indent-offset: 4; -*- # SPDX-License-Identifier: MIT # SPDX-FileCopyrightText: © 2023 Wildfire Games # SPDX-FileCopyrightText: © 2023 Stanislas Daniel Claude Dolcini from A25_A26.ElevationBonusFixer import ElevationBonusFixer from A25_A26.PlayerXMLFixer import PlayerXMLFixer from A25_A26.SessionIconPathFixer import SessionIconPathFixer from A25_A26.FixNewPlayerParent import FixNewPlayerParent from A25_A26.FormationFixer import FormationFixer from A25_A26.PlayerXMLFormationFixer import PlayerXMLFormationFixer from A25_A26.P256 import TemplateFixer, ModifiersFixer from A25_A26.P259 import convert_recursively from A25_A26.P261 import TemplateFixer as TemplateFixerP261, SedLike from A25_A26.FancyGrassRemover import FancyGrassRemover from argparse import ArgumentParser from pathlib import Path import os if __name__ == '__main__': parser = ArgumentParser(description='A25 to A26 converter.') parser.add_argument('-r', '--root', action='store', dest='root', default=os.path.dirname(os.path.realpath(__file__))) parser.add_argument('-m', '--mod', action='store', dest='mod', default='public') parser.add_argument('-v', '--verbose', action='store_true', default=False, help="Be verbose.") args = parser.parse_args() script_dir = args.root mod_name = args.mod path = Path(script_dir) / mod_name print(f"Running in {path}") print("Running P256...") template_fixer = TemplateFixer(path) template_fixer.run() modifier_fixer = ModifiersFixer(path) modifier_fixer.run() if not os.path.exists('.normalized_ao_' + mod_name) and os.path.isdir(path): print("Running P259...") convert_recursively(path) (Path('.normalized_ao_' + mod_name)).touch() else: print("Skipping P259...") print("Fixing r26074...") elevationFixer = ElevationBonusFixer(path, args.verbose) elevationFixer.run() print("Running P261...") template_fixer = TemplateFixerP261(path) template_fixer.run() print("Running FancyGrassRemover...") remover = FancyGrassRemover(path, args.verbose) remover.run() print("Fixing r26298...") fixer = PlayerXMLFixer(path, args.verbose) fixer.run() print("Fixing r26299...") fixer = PlayerXMLFormationFixer(path, args.verbose) fixer.run() print("Fixing r26317...") fixer = SessionIconPathFixer(path, args.verbose) fixer.run() print("Fixing r26458 ...") fixer = FixNewPlayerParent(path, args.verbose) fixer.run() print("Fixing r26476...") fixer = FormationFixer(path, args.verbose) fixer.run()