deep_present()
==============

FUNKTION
--------
::

        object deep_present(string what)
        object deep_present(object what)
        object deep_present(string what, object ob)
        object deep_present(object what, object ob)

ARGUMENTE
---------
::

        what - Objekt oder ID des Objektes, nach dem gesucht werden soll
        ob - Objekt, in dem gesucht werden soll

BESCHREIBUNG
------------
::

        deep_present() sucht in this_object() (oder in ob, falls angegeben)
        nach dem Objekt what oder einem Objekt, das auf what anspricht.
        Im Gegensatz zu present() wird aber das komplette Inventory berueck-
        sichtigt (also zB. auch der Inhalt von Beuteln).

RUECKGABEWERT
-------------
::

        das gefundene Objekt oder 0

SIEHE AUCH
----------
::

        present(E)

