********************* OBSOLETE LFUN ***********************************
* Diese Efun bitte nicht mehr benutzen, sondern stattdessen die       *
* Hooks (s. /doc/std/hooks).                                          *
***********************************************************************
RemoveInsertHook()

FUNKTION:
     void RemoveInsertHook(object ob);

DEFINIERT IN:
     /std/player/restrictions.c

ARGUMENTE:
     ob - Das Objekt, das als Listener aus der Liste ausgetragen werden soll

BESCHREIBUNG:
     (Diese Funktionalitaet wurde ersetzt durch den allgemeinen Hook
      H_HOOK_INSERT und ist nur noch aus Gruenden der Kompatibilitaet
      vorhanden.)

     Diese Funktion wird im Spielerobjekt aufgerufen, um ein als Listener
     eingetragenes Hook-Objekt ob wieder auszutragen.

RUeCKGABEWERT:
     keiner

SIEHE AUCH:
    NotifyInsert(), AddInsertHook(), QueryInsertHooks()

----------------------------------------------------------------------------
Last modified: 14.04.2010, Arathorn
