added "is_global" flag

This commit is contained in:
argoneus 2020-02-16 00:15:29 +01:00
parent 0991108b11
commit c5736014db

View file

@ -15,6 +15,16 @@ LANGUAGES = ["jpn", "eng", "rus"]
def main(): def main():
parser = argparse.ArgumentParser(description="Unpack and process XDU data") parser = argparse.ArgumentParser(description="Unpack and process XDU data")
global_flag_parser = argparse.ArgumentParser(add_help=False)
global_flag_parser.add_argument(
"-g",
"--global",
help="Whether we are running on Global XDU.",
action="store_true",
dest="is_global",
default=False,
)
subparsers = parser.add_subparsers( subparsers = parser.add_subparsers(
metavar="<command>", title="subcommands", dest="command" metavar="<command>", title="subcommands", dest="command"
) )
@ -81,7 +91,9 @@ def main():
parser_utage_crypt.add_argument("TARGET", help="Input", type=str) parser_utage_crypt.add_argument("TARGET", help="Input", type=str)
# utage translate # utage translate
parser_utage_translate = parser_utage_subparsers.add_parser( parser_utage_translate = parser_utage_subparsers.add_parser(
"translate", help="Generate keyed tsv and json files" "translate",
help="Generate keyed tsv and json files",
parents=[global_flag_parser],
) )
parser_utage_translate.add_argument("INPUT", help="Input", type=str) parser_utage_translate.add_argument("INPUT", help="Input", type=str)
parser_utage_translate.add_argument( parser_utage_translate.add_argument(
@ -92,7 +104,7 @@ def main():
) )
# utage names # utage names
parser_utage_names = parser_utage_subparsers.add_parser( parser_utage_names = parser_utage_subparsers.add_parser(
"names", help="Generate and update name files" "names", help="Generate and update name files", parents=[global_flag_parser]
) )
parser_utage_names.add_argument("INPUT", help="Input", type=str) parser_utage_names.add_argument("INPUT", help="Input", type=str)
parser_utage_names.add_argument( parser_utage_names.add_argument(
@ -124,7 +136,7 @@ def main():
metavar="<command>", title="subcommand", dest="subcommand" metavar="<command>", title="subcommand", dest="subcommand"
) )
parser_xdudata_update = parser_xdudata_subparsers.add_parser( parser_xdudata_update = parser_xdudata_subparsers.add_parser(
"update", help="Update an XDUData directory" "update", help="Update an XDUData directory", parents=[global_flag_parser]
) )
parser_xdudata_update.add_argument( parser_xdudata_update.add_argument(
"CACHE", help="files/ directory from XDU cache", type=str "CACHE", help="files/ directory from XDU cache", type=str
@ -152,14 +164,20 @@ def main():
raise FileNotFoundError("Could not find {}".format(args.TARGET)) raise FileNotFoundError("Could not find {}".format(args.TARGET))
elif args.subcommand == "translate": elif args.subcommand == "translate":
if os.path.isfile(args.INPUT): if os.path.isfile(args.INPUT):
utage.translate.translate_file(args.INPUT, args.TSVDIR, args.JSONDIR) utage.translate.translate_file(
args.INPUT, args.TSVDIR, args.JSONDIR, args.is_global
)
elif os.path.isdir(args.INPUT): elif os.path.isdir(args.INPUT):
utage.translate.translate_dir(args.INPUT, args.TSVDIR, args.JSONDIR) utage.translate.translate_dir(
args.INPUT, args.TSVDIR, args.JSONDIR, args.is_global
)
else: else:
raise FileNotFoundError("Could not find {}".format(args.INPUT)) raise FileNotFoundError("Could not find {}".format(args.INPUT))
elif args.subcommand == "names": elif args.subcommand == "names":
if os.path.isdir(args.INPUT): if os.path.isdir(args.INPUT):
utage.names.update_names(args.INPUT, args.OLD, LANGUAGES) utage.names.update_names(
args.INPUT, args.OLD, LANGUAGES, args.is_global
)
else: else:
raise FileNotFoundError(args.INPUT) raise FileNotFoundError(args.INPUT)
elif args.command == "diva": elif args.command == "diva":
@ -168,7 +186,12 @@ def main():
elif args.command == "xdudata": elif args.command == "xdudata":
if args.subcommand == "update": if args.subcommand == "update":
xdudata.update_all( xdudata.update_all(
args.CACHE, args.XDUDATA, args.TRANS, args.EXTRACT, LANGUAGES args.CACHE,
args.XDUDATA,
args.TRANS,
args.EXTRACT,
LANGUAGES,
args.is_global,
) )
return 0 return 0