1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
extends Node


func _ready():
	var p = Parser.new() # create the parser
	p.add_argument(Arg.new({ # add an argument
		triggers = ["-F", "--fly"], # triggers
		n_args = 2, # number of arguments
		help = "Fly places", # help message
		default = ["sky", "ground"] # default args if called without arguments
	}))
	p.add_argument(Arg.new({ # arg n2
		triggers = ["--eat"],
		n_args = "*", # any number of arguments
		help = "eats all args you give it",
		dest = "restaurant" # the variable it goes into (defaults to longest trigger)
	}))
	p.add_argument(Arg.new({
		triggers = ["-H", "-?"],
		dest = "help",
		help = "show this help message and exit",
		action = "store_true"
	}))
	var args = p.parse_arguments() # Parse
	if args.get("help", false): # Check if we want help
		print(p.help()) # Show help
	else:
		print(args) # Just show args otherwise
	get_tree().quit()