| 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 |