Set up a local function <fun> to be called when user input matches the
command <cmd>. Functions called by a player command will get the argu‐
ments as a string. It must then return 0 if it was the wrong command,
If the second argument is an array, then all the commands in the array
will call the second function. It is possible to find out which com‐
mand called the function with query_verb().
If it was the wrong command, the parser will continue searching for
another command, until one returns true or give error message to
Usually add_action() is called only from an init() routine. The object
that defines commands must be present to the player, either being the
player, being carried by the player, being the room around the player,
or being an object in the same room as the player.
If argument <flag> is 1, then only the leading characters of the com‐
mand has to match the verb <cmd> and the entire verb is returned by
query_verb(). If argument <flag> is 2, then again, only the leading
characters must match, but query_verb() will only return the characters