Files
DicePlayer/diceplayer/__main__.py

47 lines
1.1 KiB
Python

from diceplayer.cli import ArgsModel, read_input
from diceplayer.logger import logger
from diceplayer.player import Player
import argparse
from importlib import metadata
VERSION = metadata.version("diceplayer")
def main():
parser = argparse.ArgumentParser(prog="Diceplayer")
parser.add_argument(
"-v", "--version", action="version", version="diceplayer-" + VERSION
)
parser.add_argument(
"-c", "--continue", dest="continuation", default=False, action="store_true"
)
parser.add_argument(
"-i",
"--input",
dest="infile",
default="control.yml",
metavar="INFILE",
help="input file of diceplayer [default = control.in]",
)
parser.add_argument(
"-o",
"--output",
dest="outfile",
default="run.log",
metavar="OUTFILE",
help="output file of diceplayer [default = run.log]",
)
args = ArgsModel.from_args(parser.parse_args())
logger.set_output_file(args.outfile)
config = read_input(args.infile)
Player(config).play(continuation=args.continuation)
if __name__ == "__main__":
main()