@verb #12:"my_huh" this none this rxdo #55 @program #12:"my_huh" this none this "Extra parsing of player commands. Called by $command_utils:do_huh." "This version of my_huh just handles features." if (caller != this && !$perm_utils:controls(caller_perms(), this)) "Standard permissions check." raise(E_PERM) return E_PERM endif "verb - obvious pass - would be args" "plist - list of prepspecs that this command matches" "dlist and ilist - likewise for dobjspecs, iobjspecs" {verb, pass} = args plist = {"any", prepstr ? $code_utils:full_prep(prepstr) | "none"} dlist = dobjstr ? {"any"} | {"none", "any"} ilist = iobjstr ? {"any"} | {"none", "any"} for fobj in (this.features) if (!$recycler:valid(fobj)) this:remove_feature(fobj) elseif ((loc = fobj:has_callable_verb(verb)) && valid(loc = loc[1])) vargs = verb_args(loc, verb) if (vargs[2] in plist && (vargs[1] in dlist && vargs[3] in ilist)) $wiz_utils:autoextend(fobj) || "Woo, FOs are now extended upon the use of one of their verbs. - Lao" try set_task_perms(this) fobj:(verb)(@pass) "Problem with verbs of the same name. If we use which=vrb in the loop instead, we have a problem with verbs that use the variable verb." except q (ANY) this:handle_uncaught_error(q[1], q[2], 0, q[4], $code_utils:tb(q[4], q[2])) endtry return 1 endif endif if ($command_utils:running_out_of_time()) player:tell("You have too many features. Parsing your command runs out of ticks while checking ", fobj.name, " (", fobj, ").") return 1 endif endfor "Last modified by Cecil (#7407) on Tue Aug 27 12:48:43 2002 MDT." .