blob: 781510c89fdc8d629d1f23932a3c6ab3292ccb04 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
2P_AERIAL_HELPERS
3****************
4
5
6NAME
7====
8
9 P_AERIAL_HELPERS "lib_p_aerial_helpers"
10
11
12DEFINIERT IN
13============
14
15 <living/helpers.h>
16
17
18BESCHREIBUNG
19============
20
21 Diese Property kann in allen Lebewesen abgefragt werden, um die Objekte
22 zu ermitteln, die fuer die Unterstuetzung beim Fliegen/Segeln bei diesem
23 Lebewesen registriert haben. Die Daten werden als Mapping der folgenden
24 Form zurueckgeliefert:
25 ([ Objekt : Rueckgabewert von dessen Callback-Methode ])
26 Eine Erlaeuterung dazu findet sich in der Dokumentation zu
27 RegisterHelperObject().
28
29
30BEMERKUNGEN
31===========
32
33 Diese Property kann nur abgefragt werden.
34 Es ist erwuenscht, dass entsprechende, neu geschaffene Stellen jegliche
35 Helfer akzeptieren, deren Callback-Methode >0 zurueckgibt.
36
37
38BEISPIEL
39========
40
41 Um zu ermitteln, ob der Spieler mindestens ein Objekt bei sich hat, das
42 beim Fliegen hilft, sucht man alle Objekte aus dem Mapping heraus, die
43 einen Wert >0 eingetragen haben und prueft deren Anzahl:
44
45 mapping aerial = this_player()->QueryProp(P_AERIAL_HELPERS);
46 object* helpers = filter( aerial, function int (object h) {
47 return (aerial[h]>0); });
48 if ( sizeof(helpers) ) {
49 tell_object(this_player(), "Du erhebst Dich mit Hilfe "+
50 helpers[0]->name(WESSEN,1)+" elegant in die Luefte.\n");
51 }
52 else {
53 tell_object(this_player(), "Du hast nichts zum Fliegen bei Dir.\n");
54 }
55
56
57SIEHE AUCH
58==========
59
60 Methoden: RegisterHelperObject(L), UnregisterHelperObject(L)
61 Properties: P_HELPER_OBJECTS, P_AQUATIC_HELPERS
62
6312.03.2016, Arathorn