drop_obj()

FUNKTION
    int drop_obj(object ob);

DEFINIERT IN:

    /std/living/put_and_get.c

ARGUMENTE:

    ob  Das Objekt, das von dem Lebewesen, in dem diese Funktion aufgerufen
        wird, fallengelassen werden soll.

BESCHREIBUNG:

    Das Lebewesen, in dem diese Funktion aufgerufen werden soll, laesst
    den angegebenen Gegenstand fallen, wenn dies moeglich ist.

RUeCKGABEWERT:
    1, wenn das Objekt fallen gelassen wurde oder dies nicht moeglich war.
    (in diesem Fall wird auch direkt eine Textausgabe ausgegeben)
    0 sonst, in diesem Fall wird in notify_fail eine passende Ausgabe
    plaziert.

SIEHE AUCH:

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