""" Usage: roll [options] Options: -n Numeric score only -v Verbose result -h --help Displays help message --version Displays current xdice version """ import sys import xdice def _print_and_exit(string, exit_code=0): """ print and exit """ print(string) sys.exit(exit_code) # Parse arguments args = sys.argv[1:] if "-h" in args: _print_and_exit(__doc__) if "--version" in args: _print_and_exit("xdice {}".format(xdice.__VERSION__)) score_only = False if "-n" in args: score_only = True args.remove("-n") verbose = False if "-v" in args: verbose = True args.remove("-v") if len(args) != 1: _print_and_exit("xdice CLI: invalid arguments\n" + __doc__, 1) pattern_string = args[0] # Run xdice ps = xdice.roll(pattern_string) if score_only: print(ps) else: print("{}\t({})".format(ps, ps.format(verbose)))