FilterClothing
FUNKTION:
     public object *FilterClothing(closure filterfun, varargs mixed* extra)

DEFINIERT IN:
     /std/living/clothing.c

ARGUMENTE:
     closure filterfun
       Die Closure, die entscheiden soll, ob eine Kleidung im Ergebnisarray
       enthalten sein soll.

BESCHREIBUNG:
     Diese Funktion ruft <filterfunc> fuer jede getragene Kleidung des
     Lebewesen mit der jeweiligen Kleidung als Argument auf und liefert ein
     Array mit aller Kleidung zurueck, fuer die <filterfun> einen Wert != 0
     zurueckliefert.
     Die <extra> Argumente werden als zusaetzliche Parameter an <filterfun>
     uebergeben und duerfen keine Referenzen sein.
     
     Diese Variante ist zu bevorzugen, wenn man die getrage Kleidung nach
     bestimmten Kriterien durchsuchen will. 

RUeCKGABEWERT:
     Ein Array von Objekten mit allen passenden Kleidung.

BEISPIELE:
     1) Ich moechte alle Kleidung, die groesser als 50cm ist.
     private int _armour_is_bigger(object clothing, int size) {
       return clothing->QueryProp(P_SIZE) > size;
     }
     ...
     object *big_armours = PL->FilterClothing(#'_amour_is_bigger, 50); 

     2) alle Kleidung mit einer speziellen ID.
     private int _has_id(object clothing, string idstr) {
       return clothing->id(idstr);
     }
     object *has_id = PL->FilterClothing(#'_has_id, "\ntollekleidung");

     3) ueberhaupt alle getragene Kleidung
     object *clothing = PL->FilterClothing(#'objectp)

SIEHE AUCH:
     Wear(), WearArmour(), WearClothing(), Unwear(), UnwearArmour(), 
     UnwearClothing()
     P_CLOTHING, P_ARMOURS
     FilterArmours(), QueryArmourByType()

ZULETZT GEAeNDERT:
14.03.2009, Zesstra
