NotifyGiveQuest()
*****************

********************* OBSOLETE LFUN
*********************************** * Diese Efun bitte nicht mehr
benutzen, sondern stattdessen die       * * Events (siehe "man
events").                                        * ******************
*****************************************************

NotifyGiveQuest()


FUNKTION
========

   void NotifyGiveQuest(object pl, string key);


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

   /std/gilden_ob.c


ARGUMENTE
=========

   pl     Der Spieler, der eine Quest geloest hat.
   key    Name der geloesten Quest.


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

   Die Funktion wird in der Gilde des Spielers aufgerufen, wenn der
   Spieler eine gueltige Quest besteht - und zwar unabhaengig davon,
   ob er sie bereits geloest hat, oder nicht.


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

   keiner


BEMERKUNGEN
===========

   Die Funktion ist dafuer gedacht, von Gildenprogrammierern ueberschrieben
   zu werden, wenn beispielsweise bestimmte Quests als Aufstiegsbedingung
   verlangt werden, diese aber in der entsprechenden Gilde geloest sein
   muessen (z.B. Obergladiator als Level-5-Zauberer).


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

   /std/gilden_ob.c
   /std/player/quests.c

Last modified: Fri Oct 4 10:17:00 1996 by Silvana
