blob: 5854980f2e9fddb1627582b788b28e8e0929af96 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002locate_objects()
Zesstra953f9972017-02-18 15:37:36 +01003****************
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 object *locate_objects(string desc, int info);
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012DEFINIERT IN
13============
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 /std/container/restrictions.c
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018ARGUMENTE
19=========
MG Mud User88f12472016-06-24 23:31:02 +020020
Zesstra953f9972017-02-18 15:37:36 +010021 desc
22 Die Umschreibung des gesuchten Objektes.
MG Mud User88f12472016-06-24 23:31:02 +020023
Zesstra953f9972017-02-18 15:37:36 +010024 info
25 Ist ungleich 0, wenn diese Funktion von /std/living/put_and_get.c
26 aus aufgerufen wurde.
MG Mud User88f12472016-06-24 23:31:02 +020027
MG Mud User88f12472016-06-24 23:31:02 +020028
Zesstra953f9972017-02-18 15:37:36 +010029BESCHREIBUNG
30============
MG Mud User88f12472016-06-24 23:31:02 +020031
Zesstra953f9972017-02-18 15:37:36 +010032 Diese Funktion erweitert die Funktionalitaet von present_objects()
33 insofern, als dass es moeglich ist, auch noch Behaelter innerhalb des
34 Behaelters zu durchsuchen. Das genaue Verhalten haengt von desc ab:
MG Mud User88f12472016-06-24 23:31:02 +020035
Zesstra953f9972017-02-18 15:37:36 +010036 Ist desc von der Form "<id>", so wird das Ergebnis von
37 present_objects(desc) zurueckgegeben.
38
39 Ist desc von der Form "<gesucht> in <id>", so wird in allen Objekten,
40 die von present_objects("<id>") erfasst wurden,
41 locate_objects("<desc>") aufgerufen. Zurueckgegeben werden alle auf
42 diese Weise gefundenen Objekte.
43
44
45RUeCKGABEWERT
46=============
47
48 Array von Objekten, die auf die oben geschilderte Art und Weise
49 ermittelt wurden. Konnte kein Objekt ermittelt werden, wird ein leeres
50 Array zurueckgegeben.
51
52
53BEMERKUNGEN
54===========
55
56 Theoretisch sollte es moeglich sein, ueber desc rekursiv mehrere
57 Behaelterebenen erfassen zu koennen (etwa mit "schwert in beutel in
58 beutel in wargon"). In der aktuellen Implementierung klappt das jedoch
59 nicht; nach dem ersten "in" ist Schluss!
60
61
62BEISPIELE
63=========
64
65 Was steckt alles dem Beutel, den der Spieler bei sich traegt?
66
67 object *obs;
68 obs = this_player()->locate_objects("alles in beutel");
69
70 Traegt der Spieler keinen Beutel bei sich oder ist dieser leer, so wird
71 ein leeres Array zurueckgegeben.
72
73
74SIEHE AUCH
75==========
76
77 present_objects(), /std/container/restrictions.c
78
MG Mud User88f12472016-06-24 23:31:02 +020079Last modified: Wed May 8 10:20:36 1996 by Wargon