9f1 @verb #1011:"vf*ind" any any any rxo #7153 @program #1011:"vf*ind" any any any "Usage: vfind searches all around you" " vfind on searches that" "--" "Looks through all your verbs, the verbs in your location, your features, the verbs on the objects around you, etc. If you specify an object or a player, it looks on them. If you specify a player, it also looks on that player's features." " You need not be in the same room as a named player." this:update_usage(verb, player) su = $string_utils help_use = {"vfind ", "vfind on ", "vfind on "} if ((howmany = length(args)) == 1) "There being only one argument, it is vfind ." what = argstr where = {player, @player.features} if (valid(player.location)) where = {@where, player.location} whoelse = {} for thing in (player.location.contents) if (is_player(thing) && thing != player) whoelse = {@whoelse, thing} endif endfor for dude in (whoelse) where = {@where, dude} where = $set_utils:union(where, dude.features) endfor where = {@where, @player.location.contents} where = $list_utils:remove_duplicates(where) endif elseif (howmany == 3 && prepstr == "on") "There being three arguments, it is vfind on " what = dobjstr where = valid(there = player:my_match_object(iobjstr)) ? there | $player_db:find(iobjstr) if (!valid(where)) return player:tell("Unable to figure out what \"", iobjstr, "\" is.") endif if (is_player(where)) where = {where, @where.features} else where = {where} endif else "There being no proper arguments ..." return player:tell(help_use) endif "PART II ..... after defining 'what' and {where}, we start searching..." found = {} for item in (where) try if ($object_utils:has_verb(item, what)) while (E_VERBNF == (vrbinf = verb_info(item, what))) item = parent(item) endwhile if (!(item in found)) player:tell(su:left(item:title(), 20), " (", su:right(tostr(item), 5), "):", su:left(verb_info(item, what)[3], 10), " owned by ", vrbinf[1].name, " (", vrbinf[1], ")") found = {@found, item} endif endif except (ANY) endtry endfor if (found) player:tell("-----") else player:tell("Unable to find the verb \"", what, "\".") endif "Last modified by Absolute (#7153) on Wed Oct 28 21:13:19 1998 EST." . 0