HILFESEITE ZUR VERGABE DES LICHTLEVELS IM WUNDERLAND
von Yantro am 7.5.1996
ergaenzt Fiona 8.96
Im Rahmen der Anpassung an die Nacht und der Sichtbarkeit der Beschreibungen
sollte in den zukuenftigen Raeumen folgendes beachtet und wenn noch moeglich
in den alten Raeumen folgendes geaendert werden:
P_INDOORS
Ist 1 oder 0, je nachdem, ob man in einem geschlossenen Raum ist oder nicht.
Geschlossener Raum bedeutet soviel wie: Die Helligkeit in diesem Raum
wird nicht duch die Sonne beeinflusst. DH der Lichtlevel, den man setzt,
wird nicht Tageszeitabhaengig veraendert.
P_LIGHT
0, wenn in dem Raum nur etwas mit einer Fackel zu sehen sein soll
(Raum hat keine eigene Lichtquelle)
1, wenn der Raum INDOORS ist, ist dieser Raum immer erleuchtet (Lampe
an der Decke etc., ist INDOORS==0, so ist die Sonne die Lichtquelle
des Raumes, dh er ist am Tag erleuchtet, in der Nacht dunkel.
2, in diesem Raum kann man Tags (Sonnenlicht) und Nachts (Mondschein)
etwas sehen. (Dieser Wert ist fuer INDOORS-Raeume unsinnig)
Dieser Wert ist der Standardfall, wenn man eine Nachtbeschreibung
setzt, da man diese sonst nur mit Fackel sehen kann.
P_INT_LONG
Die normale Beschreibung des Raumes.
P_INT_LONG_NIGHT
Hier sollte wie in P_INT_LONG die Langbeschreibung des Raumes
stehen. Je nach Tageszeit wird dann automatisch das richtige LONG
herrausgesucht. Nur zur Klarstellung: Wenn es in der
Raumbeschreibung inhaltlich KEINE Unterschiede zwischen Tag und
Nacht geben sollte, dann kann man das auch weglassen. Dann wird
nachts das normale P_INT_LONG aufgerufen. Im Normalfall sollten
aber Raeume unter freiem Himmel eigentlich einen Unterschied
zwischen Tag und Nacht machen.
Die Unterscheidung von LONG und LONG_NIGHT ist unabhaengig davon
ob der Raum INDOORS ist.
P_INT_LONG_ILUM
Wenn ihr hier eine Beschreibung ablegt, wird P_INT_LONG_NIGHT nur
dann gezeigt, wenn der Raum keine externen Lichtquellen hat, sonst
diese Beschreibung. ZB:
P_INT_LONG = "Du stehst am See"
P_INT_LONG_NIGHT = "Der Mond spiegelt sich auf dem See"
P_INT_LONG_ILUM = "Der Mond und deine Lichtquelle spiegeln sich im See"
Ist natuerlich auch nur nuetzlich zu setzen, wenn es von den anderen
beiden Beschreibungen abweicht.
Anmerkung:
Natuerlich ist es nicht sinnvoll, dass in einem geschlossenen
Raum unterschiedliche Tag und Nachtbeschreibungen gemacht werden,
ausser, wenn zB in einem Haus durch ein Fenster auch was zu sehen
ist, was sich unter freiem Himmel befindet!
In Raeumen, die also P_INDOORS, 1 sind, kann man das Licht setzen
wie man will, denn es wird nicht durch die Nacht beeinflusst.
In Raeumen, die P_INDOORS, 0 haben, wird nachts der Lichtlevel um
1 reduziert. Wenn also P_LIGHT, 1 gesetzt ist, dann ist es da nachts
absolut finster. Wenn P_LIGHT, 2 gesetzt ist, dann kann man ueber
die Methoden unten eine komplette Nachtbeschreibung proggen.
P_SEE_LIGHT
Normalerweise erhaelt man beim Untersuchen von Himmel, Zeit etc die
Angabe, ob grade Tag ist. Ist P_INDOORS gesetzt jedoch nicht, dann
kommt "Das kannst Du von hier drinnen nicht sehen".
Setzt man diese Propertie, kann man den Standardtext beeinflussen
und auch etwas sinnvolles ausgeben, wenn man INDOORS ist.
Ist im String ein "&&", so wird dieses durch "Tag" bzw "Nacht"
ersetzt. Der Standardsatz wuerde also so aussehen:
SetProp(P_SEE_LIGHT, "Es ist grade &&.\n");
(Ist natuerlich bloedsinn, das zu setzen ;)
AddDetail(string|string* keys, mixed descr, mixed ndescr)
Das AddDetail hat sich im Prinzip nicht geaendert, sondern ist nur
um eine Sache erweitert worden: mixed ndescr !
Dabei handelt es sich um einen zweiten string mit einer Beschreibung
fuer NACHTS. Dieser string kann gesetzt werden, MUSS aber nicht !!!
Es ist nicht immer sinnvoll, denn nur selten ist die Beschreibung
eines Details Tagsueber anders als Nachts. Sinnvoll wird das Ganze,
wenn man unterschiedliche (vielleicht dem Licht angepasste) strings
ausgeben will.
BEISPIELE:
Einer der besten Beispielraeume ist:
/players/schnick/python/room/wueste2.c
AddDetail(({"spalte", "spalt"}),
"Du schaut in die Spalte, findest dort aber nur Staub.\n",
"Du versuchst in der Spalte was zu erkennen, aber das\n"+
"Mondlicht reicht nicht aus.\n");
AddDetail("mond",
"Hast Du den hier schonmal am hellen Tage gesehen?\n",
"Der Mond, er geht so stille...\n");
AddDetail("sonne",
"Die Sonne brennt Dir auf den Schaedel.\n",
"Nachts ne Sonne??? Haste nen Stich???\n");
usw...
|