/*
	The light system in 3.0 is implemented in LPC.


	All objects have a light property: OBJ_I_LIGHT. When queried for
	the property returns the lightvalue of the object.
	
	Lightvalues:
			 0 - No light given by object
			>0 - Light is generated by the object
			<0 - Darkness is generated by the object.

	The light in a room is simply all the lightvalues of the objects
	added together plus the lightvalue of the room itself. If the room
	is linked to a container then the lightvalue of the room in which
	that container resides will be added to the lightvalue of the room.

	If the light in the room totals o or less you would have to have 
	infravision to see in it. There is a prop named LIVE_I_SEE_DARK
	that would be useful then.
	
	Containers are special. The lightvalue returned by a container can
	depend on the objects inside it. The lightvalue of the container
	itself is given by the property CONT_I_LIGHT.

	OBJ_LIGHT for a container will be the same as CONT_I_LIGHT unless the
	container has the property CONT_I_TRANSP (transparency) in which case
	OBJ_LIGHT will be CONT_I_LIGHT plus all the lightvalues of the objects
	inside the container summed.

	A special form of container is a container which is linked to a room.
	Such a container can not hold objects itself. It's inside is a room
	and if the container is CONT_I_TRANSP then the lightvalue of the
	container would be the lightvalue of the room plus its own CONT_I_LIGHT.

	There is a macro in /sys/macros.h to easily test if a player can see
	in the room he stands in called CAN_SEE_IN_ROOM(ob).

