
SetBuyFact()
************


FUNKTION
========

   void SetBuyFact(int fact);


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

   /std/laden.c


ARGUMENTE
=========

   fact
        Der Einkaufspreismultiplikator.


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

   Der Preis, der beim Kauf eines Objekts im Laden zu entrichten ist,
   errechnet sich aus seinem Wert ( P_VALUE), multipliziert mit dem Faktor
   fact. Dieser Preis ist konstant und nicht von der aktuellen Marktlage
   abhaengig.

   Der Defaultwert ist 3. Ein hoeherer Wert entspricht einem teuren Laden,
   waehrend ein kleinerer Wert zu kleinen Preisen fuehrt.


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

   keiner


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

   Normalerweise kommt man ohne diese Funktion aus: in teuren Laeden wird
   nicht viel eingekauft (es sei denn, es liegen standardmaessig gute
   Objekte im Speicher), einem Billigladen wird bald das Geld ausgehen mit
   der Folge, dass der Ladenbesitzer nichts mehr ankaufen kann und sein
   Lager gaehnend leer ist.


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

   QueryBuyFact(), /std/laden.c

Last modified: Wed May 8 10:24:52 1996 by Wargon
