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 int light;

/*
 * NAME:	_F_add_light()
 * DESCRIPTION:	add to the local light value of this object
 */
nomask int _F_add_light(int i)
{
    if (PRIVILEGED()) {
	light += i;
    }
    return light;
}

/*
 * NAME:	query_light()
 * DESCRIPTION:	return the local light value of an object
 */
private int query_light(object obj)
{
    return obj->_F_add_light(0);
}

/*
 * NAME:	add_light()
 * DESCRIPTION:	adjust the light value of this object, including environments
 */
private int add_light(int i)
{
    int total_light;
    object env;

    total_light = light += i;
    for (env = environment(); env != 0; env = environment(env)) {
	total_light = env->_F_add_light(i);
    }

    return total_light;
}

/*
 * NAME:	set_light()
 * DESCRIPTION:	set the light value of an object
 */
static int set_light(int i)
{
    rlimits (-1; -1) {
	i = add_light(i);
    }

    return i;
}