find_obs()

FUNKTION
    object* find_obs(string str, int meth)

DEFINIERT IN:

    /std/living/put_and_get.c

ARGUMENTE:

    str     Der String der geparsed werden soll.
    meth    Mit Hilfe dieses Parameters koennen bestimmte Bereichs-
            eingrenzungen vorgenommen werden (definiert in moving.h):

            PUT_GET_NONE - keinerlei Bereichseingrenzung.
            PUT_GET_TAKE - es handelt sich um ein Nehmen von Gegenstaenden
                           also wird das inventory ausgenommen.
            PUT_GET_DROP - es handelt sich um das Entfernen von Gegenstaenden
                           also wird das environment ausgenommen.           
                                                                            
BESCHREIBUNG:                                                               
                                                                            
    Der String (str) muss folgendes Format haben damit Objekte gefunden
    werden.

    <gegenstand> [aus container] [in mir|im raum]

    <gegenstand> kann hierbei sowohl eine Objekt-ID als auch ein
    Gruppenbezeichner wie z.b. "alles" sein.

RUeCKGABEWERT:

    Ein Array mit allen Objekten die sich angesprochen fuehlen, oder aber 0.

SIEHE AUCH:

    drop_obj(), give_obj(), pick_obj(), put_obj(), /std/living/put_and_get.c
