GetPhiolenInfos()

GetPhiolenInfos(L)

FUNKTION

mixed *GetPhiolenInfos();

BESCHREIBUNG

Wird von der Phiole aufgerufen:
/d/inseln/miril/sternquest/obj/phiole.c
Der Raum muss /p/service/miril/phiole.h includen.
Mit der Phiole kann ein Spieler durch Tueren schauen. Bei Tueren, die
vom Doormaster (/obj/doormaster.c) verwaltet werden, klappt dies auto-
matisch. Moechte man das verbieten, so muss die Funktion
GetPhiolenInfos() im entsprechenden Raum definiert sein.
Befinden sich Tueren im Raum, die nicht vom Doormaster verwaltet werden,
aber bei denen die Phiole funktionieren soll, so kann dies ebenfalls
mittels GetPhiolenInfos() geschehen.



Funktion der Phiole:
Sie projiziert ein Bild dessen, was hinter der Tuer liegt auf die Tuer.
Steht die Tuer offen, so sieht der Spieler nur eine Wand, denn es wird
gezeigt, was hinter dieser Tuer ist.



Ist die Tuer jedoch ge- oder verschlossen, so sieht er auf der Tuer
die Langbeschreibung des Raumes, der hinter der Tuer liegt, sowie das
Inventar dieses Raumes.

Aufbau der Funktion:
mixed *GetPhiolenInfos() {
  return ({
           ([
             PHIOLE_DEST:     string,
             PHIOLE_IDS:      *string,
             PHIOLE_GENDER:   int,
             PHIOLE_STATUS:   int,     (optional)
             PHIOLE_LONG:     string,  (optional)
             PHIOLE_VERBOTEN: int      (optional)
           ]),
           ([
             ... Naechste Tuer
           ])
         });
}



PHIOLE_DEST      Dateiname des Zielraums
PHIOLE_IDS       Array der Strings, mit denen sich die Tuer
                 ansprechen laesst
PHIOLE_GENDER    Geschlecht der Tuer
PHIOLE_STATUS    aktueller Status der Tuer:
                 0 geschlossen/verschlossen, 1 offen
                 Bei Tueren, die mit NewDoor erzeugt wurden
                 nicht setzen
PHIOLE_LONG      Beschreibung des Zielraums (z.B. bei einer
                 Faketuer)
PHIOLE_VERBOTEN  0 erlaubt, 1 verboten

BEISPIEL

Ein Raum enthaelt eine Holztuer und ein Portal. Erstere ist mittels
NewDoor(...) gebaut, soll aber nicht zu durchschauen sein, letztere ist
selbstgestrickt. Die erste fuehrt in den Workroom von Jof, die zweite
ist nur ein Fake und immer geschlossen. Bei vom Doormaster erzeugten
Tueren sollte PHIOLE_STATUS nicht gesetzt werden, da dies automatisch
abgefragt wird.



#include "/p/service/miril/phiole.h"
...
mixed *GetPhiolenInfos(){
  return ({
           ([
             PHIOLE_DEST:"/players/jof/workroom",
             PHIOLE_IDS:({"holztuer"}),
             PHIOLE_GENDER:FEMALE,
             PHIOLE_VERBOTEN:1
           ]),
           ([
             PHIOLE_DEST:0,
             PHIOLE_IDS:({"portal"}),
             PHIOLE_GENDER:NEUTER,
             PHIOLE_STATUS:0,
             PHIOLE_LONG:"Du stehst in einer riesigen Schatzkammer und "
                         "kannst Dein Glueck kaum fassen. Nun brauchst "
                         "Du nur noch zuzugreifen und bist der reichste "
                         "Bewohner des MorgenGrauen.",
             PHIOLE_VERBOTEN:0
           ])
         });
 }
 Mittels PHIOLE_LONG laesst sich auch bei erlaubten und verbotenen Tueren
 einstellen, was der Spieler statt der normalen Raumbeschreibung und den
 im Raum befindlichen Objekten sehen soll. Das koennte z.B. sinnvoll
 sein, falls der Spieler zwar die Raumbeschreibung, aber nicht den fiesen
 Drachen sehen soll, der sich ebenfalls im Raum befindet.

SIEHE AUCH

NewDoor(), QueryDoorStatus(), SetDoorStatus(), QueryAllDoors()

Letzte Aenderung: Sam, 14. Jan 2006, 12:21, Miril