Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc//lfun/AddMoney

AddMoney()
**********


AddMoney(L)
===========


FUNKTION
========

   public int AddMoney(int amount);


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

   /std/container/moneyhandler.c /std/living/moneyhandler.c
   /std/player/moneyhandler.c


ARGUMENTE
=========

   int amount
      Die zufuehrende oder abziehende Geldmenge


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

   Dem Spieler wird die in  festgelegte Geldmenge abgezogen
   oder zugefuehrt.


RUeCKGABEWERT
=============

   Technisch gesehen wird Geld mit entsprechendem  erzeugt
   ("/items/money.c") und mittels "move" in den Spieler bewegt.  Das
   Ergebnis dieses "move"-Aufrufes wird hier uebergeben, z.B. 1 fuer
   OK. Die moeglichen Fehler-Konstanten sind in /sys/moving.h
   definiert, siehe auch Dokumentation zu "move".


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

    kann sowohl positiv als auch negativ sein. Welche
   Auswirkungen beide Faelle haben, sollte klar sein. Doch sollte bei
   einem negativen  vorher mittels QueryMoney() abgefragt
   werden, ob der Spieler auch ueber ausreichend Geld verfuegt. Wird
   dem Spieler Geld abgezogen, ist darauf zu achten, dieses in der
   Zentralbank einzuzahlen (s.a.:PayIn() ). Verschafft man dem Spieler
   Geld aus dem Nichts, muss es vorher bei der Zentralbank abgebucht
   (WithDraw()) werden.

   Achtung: Kann der Spieler die in  angebene Geldmenge nicht
      tragen, werden ihm keine Muenzen in sein Inventar bewegt.  Die
      Fehlermeldung erkennt man an dem Rueckgabewert ME_TOO_HEAVY.

   Im Gegensatz zu Spielern haben alle anderen Objekte (Raeume, NPC,
   etc.) standardmaessig keinen Moneyhandler. In diesem Fall muss in
   Lebewesen "/std/living/moneyhandler" und in nicht-Lebewesen
   "/std/container/moneyhandler" geerbt werden.


BEISPIELE
=========

   #include 

   // gib ihm Geld
   int money = ZENTRALBANK->WithDraw(50);
   this_player()->AddMoney(money);

   // nimm ihm Geld
   if(this_player()->AddMoney(-50)==1)
   {
     write("Der Ork beklaut dich!\n");
     ZENTRALBANK->PayIn(50);
   }


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


Geldhandling: QueryMoney(L) Zentralbank: PayIn(L), WithDraw(L) Sonstiges: move(L), /items/money.c /sys/moving.h, /std/container/moneyhandler.c /sys/money.h, /sys/bank.h

18.02.2013, Zesstra


zurück zur Übersicht

YOUTUBE | FACEBOOK | TWITTER | DISCORD | FEEDBACK | IMPRESSUM | DATENSCHUTZ 1992–2023 © MorgenGrauen.