mud/
mud/2.4.5/dgd/include/
mud/2.4.5/dgd/std/
mud/2.4.5/dgd/sys/
mud/2.4.5/doc/
mud/2.4.5/doc/examples/
mud/2.4.5/log/
mud/2.4.5/obj/Go/
mud/2.4.5/players/
mud/2.4.5/players/lars/
mud/2.4.5/room/death/
mud/2.4.5/room/maze1/
mud/2.4.5/room/post_dir/
mud/2.4.5/room/sub/
private string creator;

/*
 * NAME:	_Q_creator()
 * DESCRIPTION:	return the creator of the current object
 */
nomask string _Q_creator()
{
    return creator;
}

/*
 * NAME:	creator()
 * DESCRIPTION:	return the creator of this object
 */
static string creator(object obj)
{
    ARGCHECK(obj, creator, 1);

    return obj->_Q_creator();
}

/*
 * NAME:	init_creator()
 * DESCRIPTION:	set the creator of this object
 */
private void init_creator()
{
    string *path;

    path = explode(object_name(this_object()), "/");
    if (path[0] == "players") {
	creator = path[1];
    } else if (sscanf(object_name(this_object()), "%*s#") == 1 &&
	       previous_object() != 0) {
	creator = previous_object()->_Q_creator();
    }
}