moved_where()
*************


FUNKTION
========

   public object moved_where(void);


DEFINIERT IN
============

   /std/living/put_and_get.c


ARGUMENTE
=========

   keine


BESCHREIBUNG
============

   Mit dieser Funktion laesst sich ermitteln, wohin das Lebewesen zuletzt
   mittels put_objects(L) oder give_objects(L) etwas bewegt oder wem es mit
   show_objects(L) etwas gezeigt hat.


RUECKGABEWERT
=============

   Der Container oder das Lebewesen, wohin die Gegenstaende bewegt wurden.


BEISPIEL
========

   siehe give_objects()


SIEHE AUCH
==========

   put_objects(L), give_objects(L), show_objects(L), NotifyInsert(L),
   P_LAST_CONTENT_CHANGE

Last modified: Thu Aug 28 22:16:15 2008 by Amynthor
