4aa @verb #1492:"match_command" this none this rx #60 @program #1492:"match_command" this none this "match_command(vrb, dlist, plist, ilist)" "return true if this object can handle the command, false otherwise" "vrb - name of the verb the player typed" "dlist - list of objspecs that this command matches" "plist and ilist - likewise for prepspecs, iobjspecs" if (player.focus_object == this && this.location in {player, player.location}) vrb = args[1] dlist = args[2] plist = args[3] ilist = args[4] if (vrb in {"pick", "jump", "goto", "details", "remember", "forget", "delete", "next", "prev", "previ", "previo", "previou", "previous"} && "none" in plist && "none" in ilist) return 1 elseif (vrb in {"read", "ignore", "watch"} && "none" in dlist && "none" in plist) return 1 elseif (vrb in {"show"} && "none" in dlist && "at/to" in plist) return 1 elseif (vrb in {"reset", "stack", "mailme", "lock", "unlock", "update", "control", "release"} && !("on top of/on/onto/upon" in plist)) return 1 elseif (vrb in {"pop", "back"} && "none" in dlist && ("none" in plist || "for/about" in plist)) return 1 endif endif return pass(@args) . 0