Leave()

FUNKTION:
     int Leave();

DEFINIERT IN:
     /std/transport.c

ARGUMENTE:
     keine

BESCHREIBUNG:
     Wenn sich der Spieler auf einem Transporter befindet, und dieser sich
     momentan an einer Haltestelle liegt, verlaesst der Spieler den
     Transporter.

RUeCKGABEWERT:
     Null, wenn der Spieler den Transporter nicht verlassen konnte, sonst
     ungleich Null.

BEMERKUNGEN:
     Es werden keine Tests durchgefuehrt, ob der Transporter ueberhaupt
     angesprochen wurde! Das muss man selber machen.

BEISPIELE:

     int myLeave(string str)
     {
       if (str && id(str))
         return Leave();

       notify_fail("Was willst Du verlassen?\n");
       return 0;
     }

SIEHE AUCH:
     Enter(), /std/transport.c

----------------------------------------------------------------------------
Last modified: Wed May 8 10:20:30 1996 by Wargon
