Hash'O'Matic (#931)(an instance of Generic pile of stuff made by genna)VERB SOURCE CODE: protected_verbs:
"Copied from Generic pile of stuff (#449):protected_verbs by Snap (#448) Sat Apr
23 18:14:39 1994 EDT";
if ((caller != this.generic) && (caller != this))
return E_PERM;
endif
if (args[1] == "set_prop")
object = args[2];
prop = args[3];
val = args[4];
if (prop == "name")
$building_utils:set_names(object, val);
else
object.(prop) = val;
endif
elseif (args[1] == "create")
return $recycler:_create(this.generic_object);
elseif (args[1] == "verbs")
object = args[2];
return verbs(object);
elseif (args[1] == "verb_info")
object = args[2];
STR = args[3];
return verb_info(object, STR);
elseif (args[1] == "properties")
object = args[2];
return properties(object);
elseif (args[1] == "all_properties")
object = args[2];
return $object_utils:all_properties(object);
elseif (args[1] == "recycle")
object = args[2];
if (valid(object) && (parent(object) == this.generic_object))
$recycler:_recycle(object);
endif
elseif (args[1] == "verb_name")
if (!this.take_name)
my_verb_info = verb_info(this.generic, "take");
my_verb_code = verb_code(this.generic, "take");
my_verb_args = verb_args(this.generic, "take");
add_verb(this, my_verb_info, my_verb_args);
set_verb_code(this, strsub(my_verb_info[3][1..index(my_verb_info[3] + " ",
" ") - 1], "*", ""), my_verb_code);
this.take_name = "take";
endif
if (typeof(info = verb_info(this, this.take_name)) == ERR)
return info;
else
what = args[2];
val = set_verb_info(this, this.take_name, {@info[1..2], what});
this.take_name = strsub(what[1..index(what + " ", " ") - 1], "*", "");
return val;
endif
endif
.
PROPERTY DATA: |