MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 1 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 2 | P_PARA |
| 3 | ****** |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 4 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 5 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 6 | NAME |
| 7 | ==== |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 8 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 9 | P_PARA "para" |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 10 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 11 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 12 | DEFINIERT IN |
| 13 | ============ |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 14 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 15 | /sys/properties.h |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 16 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 17 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 18 | BESCHREIBUNG |
| 19 | ============ |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 20 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 21 | Nummer der Parallelwelt, in der sich ein Spieler befindet. |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 22 | |
Zesstra | 953f997 | 2017-02-18 15:37:36 +0100 | [diff] [blame^] | 23 | Ist die Property P_PARA auf Null gesetzt, so befindet sich der Spieler in |
| 24 | der 'Normalwelt'. Gibt es bei einer Bewegung dieses Spielers mehrere |
| 25 | moegliche Zielraeume mit identischem Namen aber unterschiedlichen Endungen |
| 26 | 'name.c', 'name^1.c', 'name^2.c' etc., so wird der Spieler in den Raum |
| 27 | 'name.c' bewegt. |
| 28 | |
| 29 | Wird die Property P_PARA auf einen Wert n>0 gesetzt, so landet der Spieler |
| 30 | bei einer Bewegung im Raum 'name^n.c'. Ist kein Raum mit entsprechender |
| 31 | Endung vorhanden, wird der Spieler stattdessen in den Normalweltraum |
| 32 | bewegt. |
| 33 | |
| 34 | Diese Prop kann auch in einem Virtual Compiler gesetzt werden. In diesem |
| 35 | Fall schraenkt sie die Dimensionen ein, in denen der VC Objekte erzeugt. |
| 36 | Die Prop kann eine einzelne Ziffer (Int) oder ein Array von Ints |
| 37 | aufnehmen, dann ist der VC fuer alle angegeben Dimensionen zustaendig. |
| 38 | Ein leeres Array erlaubt gar keine Para-Objekte. |
| 39 | |
| 40 | |
| 41 | ANMERKUNG |
| 42 | ========= |
| 43 | |
| 44 | Die Endung '^0' kennzeichnet _nicht_ die Normalwelt. So lange kein Ausgang |
| 45 | explizit auf den Raum 'name^0.c' verweist, wird kein Spieler den Raum |
| 46 | betreten koennen. Deshalb kann man die Endung '^0' z.B. dazu benutzen, um |
| 47 | eigene Standardraeume fuer ein Gebiet zu schreiben, die dann sowohl von |
| 48 | den Normal- als auch von den Parallelweltraeumen inheritet werden. |
| 49 | |
| 50 | Raeume mit Endungen '^n.c', bei denen 'n' keine positive ganze Zahl ist, |
| 51 | werden nicht beachtet. |
| 52 | |
| 53 | Fuer die Entscheidung, in welchem Raum ein Spieler in Abhaengigkeit von |
| 54 | P_PARA landet, ist die Funktion move() zustaendig. Als Magier muss man sich |
| 55 | darum nicht gesondert kuemmern. Das heisst aber auch, dass beim Anschluss |
| 56 | eines Normalweltraumes automatisch alle in dem Verzeichnis mit gleichem |
| 57 | Namen vorhandenen Parallelweltraeume mit angeschlossen werden. |
| 58 | |
| 59 | Sollen einzelne Parallelweltraeume noch nicht angeschlossen werden, so muss |
| 60 | in ihnen die Property P_NO_PLAYERS gesetzt werden. Diese Raeume sind dann |
| 61 | nur durch Magier und Testspieler zu betreten (und zu testen). |
| 62 | |
| 63 | In Paraweltraeumen liefert P_PARA 'n' zurueck. |
| 64 | Man kann also z.B. in NPCs einfach ueber environment()->QueryProp(P_PARA) |
| 65 | abfragen, in welcher Parawelt sich dieser gerade befindet. |
| 66 | |
| 67 | |
| 68 | SIEHE AUCH |
| 69 | ========== |
| 70 | |
| 71 | P_NO_PLAYERS, move, pararaeume |
| 72 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 73 | 25.Jan 2015 Gloinson |