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