blob: f1d66a5eb476cb7489d3a4ba46e815ae9aee941b [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002SetStorageRoom()
Zesstra953f9972017-02-18 15:37:36 +01003****************
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 void SetStorageRoom(string store);
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012DEFINIERT IN
13============
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 /std/room/shop.c
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018ARGUMENTE
19=========
MG Mud User88f12472016-06-24 23:31:02 +020020
Zesstra953f9972017-02-18 15:37:36 +010021 store
22 Dateiname des Lagers, in dem die aufgekauften Objekte aufbewahrt
23 werden.
MG Mud User88f12472016-06-24 23:31:02 +020024
MG Mud User88f12472016-06-24 23:31:02 +020025
Zesstra953f9972017-02-18 15:37:36 +010026RUeCKGABEWERT
27=============
28
29 keiner
30
31
32BESCHREIBUNG
33============
34
35 Mit dieser Funktion wird dem Laden bekannt gegeben, welches Objekt
36 als Lager fuer angekaufte Objekte dienen soll. Jeder Laden muss
37 explizit einen eigenen Lagerraum setzen, ansonsten wird ein
38 Laufzeitfehler ausgeloest und der Laden ist nicht ladbar.
39
40
41
42 Das Speicherobjekt sollte /std/store.c erben, da dort einige
43 Aufraeumfunktionen definiert sind. Entscheidend fuer selbige sind
44 die Properties P_MIN_STOCK und P_STORE_CONSUME.
45
46
47BEISPIELE
48=========
49
50 Der Raum 'myladen.c' koennte etwa so aussehen:
51
52
53
54 // myladen.c
55 inherit "/std/shop";
56 #include <properties.h>
57
58
59
60 protected void create() {
61 ::create();
62 SetProp(...); // Beschreibung wie bei normalen Raeumen
63 SetStorageRoom("/d/beispiel/mystore");
64 AddFixedObject("/items/fackel");
65 }
66
67 In diesem Laden wird nun die Standardfackel als mengenmaessig
68 unbegrenzter Artikel verkauft.
69
70 Der zugehoerige Lagerraum 'mystore.c' kann dann im einfachsten Fall
71 so aussehen:
72
73
74
75 // mystore.c
76 inherit "/std/store";
77 #include <rooms.h> // Fuer AddItem-Konstanten
78
79
80
81 protected void create() {
82 ::create();
83 // KEINE weiteren Beschreibungen!
84 // 1. erbt der Speicher keine Beschreibungsmodule,
85 // 2. sollen da eh nur Sachen und keine Spieler rein!
86 AddItem("/items/schaufel", REFRESH_REMOVE);
87 }
88
89
90
91 Der Laden verkauft nun auch Schaufeln, jedoch nur eine pro Reset.
92
93HINWEISE:
94 Fuer standardmaessig verkaufte Waren beachte man den Unterschied
95 zwischen den Funktionen AddItem() und AddFixedObject(). Die
96 erstgenannte Funktion ist im Lager zu verwenden, letztere jedoch im
97 Laden.
98
99
100SIEHE AUCH
101==========
102
103 Allgemeines: laden
104 Funktionen: AddItem(L), AddFixedObject(L), RemoveFixedObject(L)
105 Basisobjekte: /std/store.c
106 Properties: P_MIN_STOCK, P_STORE_CONSUME
107
MG Mud User88f12472016-06-24 23:31:02 +0200108Last modified: 19-Jun-2015, Arathorn