Morgengrauner Dokumentation
Dateipfad: /home/mud/mudlib/doc/efun/first_inventorySYNOPSIS
object first_inventory()
object first_inventory(string ob)
object first_inventory(object ob)
BESCHREIBUNG
Liefert das erste Objekt im Inventory von , wobei entweder
ein Objekt oder der Name eines Objekts ist. Wenn nicht angegeben
wird, wird standardmaessig this_object() verwendet.
BEISPIELE
Diese Efun verwendet man am haeufigsten im folgenden Kontext:
for(obj=first_inventory(container);obj;obj=next_inventory(obj))
{
}
Wer solche Aufrufe haeufig verwendet, findet es moeglicherweise
sinnvoll, ein Praeprozessor-Makro zu verwenden:
#define FORALL(x, y) for(x=first_inventory(y);x;
x=next_inventory(x))
Damit vereinfacht sich das obige Beispiel zu:
FORALL(obj, container)
{
}
ACHTUNG: Wenn das Objekt innerhalb von
bewegt wird, liefert next_inventory() ein Objekt aus dem neuen
Inventory von . Auch sollte next_inventory() nicht fuer
zerstoerte Objekte aufgerufen werden. Fuer den Fall, dass
bewegt und/oder zerstoert wird, ist folgende Loesung
vorzuziehen:
for(obj=first_inventory(container);obj;)
{
next=next_inventory(obj);
obj=next;
}
SIEHE AUCH
next_inventory(E), all_inventory(E), environment(E), deep_inventory(E)
zurück zur Übersicht