
_query_current_money()
**********************


FUNKTION
========

   int _query_current_money()


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

   /p/daemon/zentralbank.c


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

   Es wird zurueckgegeben, wieviel Geld die Zentralbank besitzt.


BEISPIELE
=========

   #include <bank.h>
   ...
   if(ZENTRALBANK->_query_current_money()<30000) {
    write(break_string(
     "Leider koennen wir ihren Bausparvertrag derzeit nicht einloesen.",
     "Der Beamte sagt: ",78));
    say(break_string(
     "Leider koennen wir ihren Bausparvertrag derzeit nicht einloesen.",
     "Der Beamte sagt zu "+this_player()->name(WEM)+": ",78));
   }


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

   Unsere Zentralbank ist korrupt, vor allem dadurch, dass in Laeden und
   an anderen Stellen Geld erzeugt wird.


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

   Geldhandling:      AddMoney(L), QueryMoney(L)
   Zentralbank:       WithDraw(L), PayIn(L)
   Sonstiges:         /items/money.c, /sys/bank.h

27. Apr 2004 Gloinson
