trigger_sensitive_inv()

FUNKTION:
     varargs void trigger_sensitive_inv(object ob, string key, int wert,
     mixed *optionen1, mixed *optionen2);

DEFINIERT IN:
     eigenen Objekten, wird aufgerufen von /std/container/inventory.c

ARGUMENTE:
     ob
          Das ausloesende Objekt
     key
          Der Schluessel, der die Aktion ausloeste.
     wert
          Der Grenzwert des ausloesenden Objektes.
     optionen1
          Die Optionen des ausloesenden Objektes.
     optionen2
          Die Optionen des reagierenden Objektes.

BESCHREIBUNG:
     Diese Funktion wird in Objekten des sensitiven Typs SENSITIVE_INVENTORY
     aufgerufen, wenn sie in Kontakt mit Objekten des Typs
     SENSITIVE_INVENTORY_TRIGGER treten, die den gleichen Schluessel
     aufweisen und einen hoeheren Grenzwert haben.

     Anhand der Parameter koennen dann die noetigen Aktionen ausgeloest
     werden.

RUeCKGABEWERT:
     keiner

BEISPIELE:

SIEHE AUCH:
     trigger_sensitive_attack(), sensitive Objekte

----------------------------------------------------------------------------
Last modified: Wed May 8 10:26:10 1996 by Wargon
