parent $frob_class
parent $thing
object $thing_class
var $root dbref 'thing_class
var $root child_index 0
var $root fertile 1
var $root manager $thing_class
var $root owned [$thing_class]
var $root owners [$]
var $root writable []
var $root readable ['parameters, 'methods, 'code]
var $root inited 1
var $located location $nowhere
var $located obvious 1
var $described prose #[]
var $has_verbs verbs #[]
var $gendered gender $gender_neuter
var $named name ['uniq, "thing_class"]
var $named name_aliases []
method name
arg [args];
if (args && (type(args[1]) == 'dictionary))
return (> ._name(@args) <);
return (> pass(@args) <);
.
method namef
arg [args];
if (args && (type(args[1]) == 'dictionary))
return (> ._namef(@args) <);
return (> pass(@args) <);
.
method short_description
arg [args];
if (args && (type(args[1]) == 'dictionary))
return (> ._description(@args) <);
return (> pass(@args) <);
.
method long_description
arg [args];
if (args && (type(args[1]) == 'dictionary))
return (> ._description(@args) <);
return (> pass(@args) <);
.
method prose
arg [args];
var dict;
if (args && (type(args[1]) == 'dictionary))
return (> ._prose(@args) <);
return (> pass(@args) <);
.
method _namef
arg dict, [args];
return (> ._name(dict, args) <);
.
method _prose
arg dict, [args];
(> .perms(sender(), 'this) <);
return (| dict['prose] |) || "You see nothing special.";
.
method _name
arg dict, [args];
var name, article;
(> .perms(sender(), 'this) <);
article = [@args, 'indef][1];
name = (| dict['name] |) || [.name(), 'prop, [.name_aliases()]];
switch (name[2]) {
case 'none:
return (> .name(article) <);
case 'uniq:
if (article == 'indef)
return (($string.a_or_an(name[1])) + " ") + (name[1]);
else
return "the " + (name[1]);
default:
return name[1];
}
.
method _description
arg dict, [args];
(> .perms(sender(), 'this) <);
return [._name(dict), @._prose(dict)];
.