P_LIGHT_TYPE¶
NAME¶
P_LIGHT_TYPE "light_type"
DEFINIERT IN¶
/sys/thing/description.h
BESCHREIBUNG¶
Gibt an, was fuer ein Licht in einem Objekt vorherrscht.
Es sind verschiedene 'atomare' Lichttypen vordefiniert:
LT_MISC Unbestimmt, keine Angaben.
LT_SUN Sonnenlicht.
LT_MOON Mondlicht
LT_STARS Sternenlicht.
LT_DIFFUSE Indirektes Tageslicht. (z.B. im Wald)
LT_CANDLE Kerzenlicht.
LT_TORCH Fackelschein.
LT_OPEN_FIRE Sonstiges offenes Feuer. (Lagerfeuer etc.)
LT_MAGIC Irgendeine magische Lichtquelle.
LT_GLOWING Eine selbstleuchtende Lichtquelle.
LT_DARKNESS Kein wirkliches Licht, aber auch Dunkelheit soll
explizit gesetzt werden koennen.
In einem Objekt koennen mehrere Lichttypen gesetzt werden. Dies
geschieht durch logische Oder-Verknuepfungen, siehe man operators.
Wenn in einem Raum mehr als ein Lichttyp gesetzt ist, bedeutet das,
normalerweise, dass mehrere Lichtquellen verschiedenen Typs im Raum
sind.
Es gibt zudem noch Lichttypen, die zusammengesetzt sind:
LT_DAYLIGHT Tageslicht (Sonne/Diffus)
LT_NATURAL Natuerliches Licht (Daylight/Sterne/Mond)
LT_ARTIFICIAL Kuenstliches Licht (Magie/Feuer/Gluehen)
LT_FIRE Feuer (Kerzen/Fackeln/offenes Feuer)
BEISPIELE¶
Ein Objekt soll ein geheimnisvolles Gluehen von sich geben:
objekt->SetProp( P_LIGHT_TYPE, LT_GLOWING )
Soll ein Raum beschrieben werden, der durch Sternenlicht erhellt ist,
in dem aber zusaetzlich noch ein Lagerfeuer brennt, sieht die Syntax
folgendermassen aus:
raum->SetProp( P_LIGHT_TYPE, LT_STARS|LT_OPEN_FIRE );
Einer brennenden Hose kann der Lichttyp fuer offenes Feuer mitgegeben
werden. Es muss jedoch nicht zwingend der Lichttyp fuer magische
Lichtquellen benutzt werden. Es ist klar, dass es irgendwas mit Magie
zu tun hat, wenn brennende Spieler durch die Gegend laufen, ohne zu
schreien. P_LIGHT_TYPE sollte jedoch das fassbare Licht beschreiben.
LT_MAGIC ist also eher eine Notloesung fuer Licht, dessen Ursache man
nicht erklaeren kann.
ANMERKUNG¶
P_LIGHT_TYPE dient ausschliesslich der Beschreibung des Lichtes, das
vorherrscht. Es ist nicht verbunden mit dem Lichtsystem, und soll es
auch nicht werden.
Die Empfindlichkeit der Dunkelelfen gegen Sonnenlicht wird ueber diese
Property gesteuert. Soll ein Raum mit (P_INDOORS==0) so dunkel sein, dass
sie nicht in Gefahr sind, sollten weder LT_MISC, noch LT_SUN gesetzt
sein.
SIEHE AUCH¶
CheckLightType(), /std/thing/description.h, operators