PROPERTY:
P_BUYFACTOR
DEFINIERT ALS:
"buyfactor"
DEFINIERT IN:
/sys/laden.h
WERTE:
in Stores:
int, float oder closure
in Wechselstuben:
int oder closure
BESCHREIBUNG:
Stores:
Gibt einen Faktor an, um den im Objekte mehr/weniger kosten als ihr
eigentlicher Wert (P_VALUE) ist. P_BUYFACTOR gibt also die 'Gewinn-
spanne' des Ladens an. Hat eine Fackel einen Wert von 5 Bernsteinen,
so kauft sie ein Spieler in dem Laden fuer P_BUYFACTOR * 5. Standard
fuer P_BUYFACTOR ist 3. Die Fackel kostet also standardmaessig 15
Bernsteine im Laden. Ebenso natuerlich fuer Aussweltwaehrung etc.
Die Property *muss* im Store gesetzt werden, nicht im zugehoerigen
Laden.
Statt einem Integerwert kann auch eine Closure angegeben werden, die
einen Faktor zurueckliefert. Die Closure wird NACH dem ermitteln des
Wertes und VOR dem Feilschen multipilziert. Die Closure hat folgen-
des Format mit zwei Argumenten:
int myfun(object kaufobkt, int grundwert):
oder
float myfun(object kaufobkt, int grundwert);
Wechselstuben:
Bei Wechselstuben (abgeleitet von std/exchange.c) gibt P_BUYFACTOR
einen Prozentwert an, der die Bearbeitungsgebuehr der Transaktion
darstellt. 10 ist Standard. Negative Werte und Float-Werte sind nicht
moeglich.
Wird eine Closure angegeben, wird sie mit einem Argument aufgerufen:
int myfun(object player):
So koennen bestimmten Spielern Boni oder Mali eingeraeumt werden. Die
Closure muss einen Wert >= 0 zurueckgeben.
BEACHTE:
Laeden:
Ein P_BUYFACTOR von 0 oder als Returnwert der Closure 0 bewirkt,
dass das Objekt NICHTS kostet!!! Dies ist nicht oder nur ausnahms-
weise akzeptabel!
Der Standardfactor 3 hat sich bewaehrt. Ein abweichender Wert
sollte mit einem Regions/Erzmagier abgesprochen werden!
SIEHE AUCH:
P_SELLFACTOR, P_VALUE, P_STORAGE, P_TRADER_NEEDED, P_TRADER_GENDER,
P_TRADER_WARNS, P_TRADE_WITH, P_TRADE_NOT, P_MAX_CASH, P_MAX_STORE,
P_CURRENCY
|