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