exit()

FUNKTION:
  varargs void exit(object liv, object dest);

DEFINIERT IN:
  /std/room/description.c

ARGUMENTE:
  liv - (object) Das bewegte Lebewesen.
  dest - (object) Das Environment, in welches bewegt wird.

BESCHREIBUNG:
  Diese Funktion wird immer dann aufgerufen, wenn ein Lebewesen den
  Raum verlaesst. Standardmaessig werden hier ggf. die Raummeldungen
  abgestellt, man kann aber auch eigene Checks einhaengen. In dem Fall MUSS
  man aber das geerbte exit() auf jeden Fall aufrufen.

RUeCKGABEWERT:
  keiner

BEMERKUNG:
  Man beachte, dass this_player() 0 sein kann, wenn z.B. ein netztoter Spieler
  Spieler den Raum verlaesst.
  Man beachte ausserdem, dass this_player() nicht unbedingt das bewegte Living
  sein muss. Wenn z.B. jemand ein Lebewesen bewegt, ist TP der, der die
  Bewegung durchfuehrt, nicht das Lebewesen.

SIEHE AUCH:
  init(), this_player(), previous_object(), caller_stack(),
  NotfiyLeave(), NotifyRemove(), NotifyDestruct()
----------------------------------------------------------------------------
Last modified: 25.02.2009, Zesstra
