SetStorageRoom()¶
FUNKTION¶
void SetStorageRoom(string store);
DEFINIERT IN¶
/std/room/shop.c
ARGUMENTE¶
store
Dateiname des Lagers, in dem die aufgekauften Objekte aufbewahrt
werden.
RUeCKGABEWERT¶
keiner
BESCHREIBUNG¶
Mit dieser Funktion wird dem Laden bekannt gegeben, welches Objekt
als Lager fuer angekaufte Objekte dienen soll. Jeder Laden muss
explizit einen eigenen Lagerraum setzen, ansonsten wird ein
Laufzeitfehler ausgeloest und der Laden ist nicht ladbar.
Das Speicherobjekt sollte /std/store.c erben, da dort einige
Aufraeumfunktionen definiert sind. Entscheidend fuer selbige sind
die Properties P_MIN_STOCK und P_STORE_CONSUME.
BEISPIELE¶
Der Raum 'myladen.c' koennte etwa so aussehen:
// myladen.c
inherit "/std/shop";
#include <properties.h>
protected void create() {
::create();
SetProp(...); // Beschreibung wie bei normalen Raeumen
SetStorageRoom("/d/beispiel/mystore");
AddFixedObject("/items/fackel");
}
In diesem Laden wird nun die Standardfackel als mengenmaessig
unbegrenzter Artikel verkauft.
Der zugehoerige Lagerraum 'mystore.c' kann dann im einfachsten Fall
so aussehen:
// mystore.c
inherit "/std/store";
#include <rooms.h> // Fuer AddItem-Konstanten
protected void create() {
::create();
// KEINE weiteren Beschreibungen!
// 1. erbt der Speicher keine Beschreibungsmodule,
// 2. sollen da eh nur Sachen und keine Spieler rein!
AddItem("/items/schaufel", REFRESH_REMOVE);
}
Der Laden verkauft nun auch Schaufeln, jedoch nur eine pro Reset.
- HINWEISE:
- Fuer standardmaessig verkaufte Waren beachte man den Unterschied zwischen den Funktionen AddItem() und AddFixedObject(). Die erstgenannte Funktion ist im Lager zu verwenden, letztere jedoch im Laden.
SIEHE AUCH¶
Allgemeines: laden
Funktionen: AddItem(L), AddFixedObject(L), RemoveFixedObject(L)
Basisobjekte: /std/store.c
Properties: P_MIN_STOCK, P_STORE_CONSUME
Last modified: 19-Jun-2015, Arathorn