P_LIGHT
*******


NAME
====

   P_LIGHT                       "light"


DEFINIERT IN
============

   /sys/properties.h


BESCHREIBUNG
============

   Gibt den Lichtlevel eines Objektes an, d.h. wie hell das Objekt von sich
   aus leuchtet. Moechte man den gesamten Lichtlevel haben, der von einem
   Objekt ausgeht, so sollte man P_TOTAL_LIGHT nehmen, das den Inhalt eines
   Containers direkt mit verrechnet.

   Bitte _nur_ ueber SetProp bzw. QueryProp zugreifen, da es fuer die
   Berechnung wichtig ist, dass in allen Containern P_LAST_CONTENT_CHANGE
   gesetzt wird, um ein Neuberechnen des Lichtlevels auszuloesen!


ANMERKUNG
=========

   Um ein ungefaehres Gefuehl davon zu bekommen, was ein Lichtlevel in
   etwa bedeutet, hier einige allgemeine Beispiele von Gegenstaenden.
   Grundsaetzlich sind Objekte mit Lichtlevel <0 und >2
   genehmigungspflichtig; zustaendig sind bei Raeumen der Regionsmagier,
   bei Objekten die Objektbalance und bei Gildenfaehigkeiten die
   Gildenbalance.

   Lichtlevel -1,  z.B. ein schwarzer Ring, von dem eine kleine dunkle Aura
                   ausgeht, die den Spieler umgibt.
   Lichtlevel  0,  der Gegenstand beeinflusst das Licht ueberhaupt nicht
   Lichtlevel  1,  der Spieler haelt eine kleine Lichtquelle in den
                   Haenden, dieses kann ein Leuchtpfirsich, eine Fackel oder
                   ein Feuerschwert oder aehnliches sein.
   Lichtlevel  2,  eine etwas groessere Lichtquelle, die aber immer noch
                   nicht den Raum beleuchtet, sondern lediglich dem Spieler
                   einen Lichtschein gewaehrt, mit dem er sehen kann.
   Lichtlevel >2,  extrem helle Lichtquellen, die den gesamten Raum
                   ausleuchten; in der Regel wohl eher magischer Natur.
                   Solche Lichtquellen sollten sich mit der Zeit
                   verbrauchen, dem Spieler Schaden zufuegen oder
                   aehnliches, damit die Spieler nicht defaultmaessig mit
                   einer solchen Lichtquelle durchs MG ziehn.

   Daraus ergeben sich dann folgende Konsequenzen fuer Raeume:
   Lichtlevel  >1: Der Raum ist sehr hell erleuchtet und kann von Spielern
                   nicht oder nur sehr schwer abgedunkelt werden. Ein Wert
                   von 2-3 kann interessant sein, wenn die NPCs im Raum
                   ueber keine Nachtsicht verfuegen. Ueber ein Abdunkeln des
                   Raumes kann der Spieler dann doch den Nachtkampf nutzen.
   Lichtlevel   1: Der Raum ist erleuchtet und die Spieler koennen ohne
                   weitere Lichtquellen sehen.
   Lichtlevel   0: Ein dunkler Raum, in dem man mit jeder Fackel sehen kann.
   Lichtlevel  -1: man benoetigt zwei einfache Lichtquellen oder Nachtsicht,
                   um in diesem Raum etwas sehen zu koennen.
   Lichtlevel  -2: Man benoetigt schon eine besondere Lichtquelle, um in
                   diesem Raum noch etwas sehen zu koennen. Solche
                   Lichtquellen sind nichts fuer Anfaenger oder mittlere
                   Spieler, da sie schwer zu beschaffen und in der Regel
                   auch einige Handicaps haben.
   Lichtlevel <-2: Der Raum ist wirklich absolut stockduster und
                   Lichtquellen, die solch einen Raum ausleuchten koennen,
                   sind ausserordentlich selten und haben immer ihre
                   Tuecken. Diese Lichtlevel sollten nur mit Vorsicht
                   gesetzt werden.


SIEHE AUCH
==========

   P_TOTAL_LIGHT, P_INT_LIGHT, P_PLAYER_LIGHT, P_LIGHT_MODIFIER, CannotSee()
   P_LIGHT_ABSORPTION, P_LIGHT_TRANSPARENCY
