blob: 4e47265910d65ded7d5fdd3ed89fca0856c91617 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001#include <moving.h>
2#include <defines.h>
3#include <rooms.h>
4#include <properties.h>
5#include "queue.h"
6#include "haus.h"
7
8inherit "/std/room";
9
10create()
11{
12 object q;
13
14 ::create();
15
16 SetProp( P_INDOORS, 1 );
17 SetProp( P_LIGHT, 1 );
18 SetProp( P_INT_SHORT, "In der MorgenGrauen-Bank" );
19 SetProp( P_INT_LONG,
20 break_string( "Dunkle Schatten erfuellen diesen Raum, nur "
21 "schemenhaft kannst Du einige Schlangen sowie einen "
22 "Informationsstand erkennen. Du beginnst zu "
23 "begreifen:\nDu befindest Dich in der "
24 "MorgenGrauen-Bank, der 'Bank in Ihrem Ruecken'.\n"
25 "Wenn Du Seher oder Seherin bist, kannst Du hier "
26 "einen Bausparvertrag fuer ein Seherhaus erwerben, "
27 "Raten fuer einen laufenden Bausparvertrag "
28 "einzahlen und ein abbezahltes Haus abholen. "
29 "Ausserdem kannst Du hier Geldkarten erwerben und "
30 "Dein Konto auffuellen. Dazu musst Du Dich nur "
31 "zu den entsprechenden Schaltern begeben. "
32 "Nach Sueden kannst Du die Bank wieder "
33 "verlassen.\n", 78, 0, BS_LEAVE_MY_LFS ) );
34
35 AddDetail( ({ "wand", "waende" }),
36 "An den Waenden treiben die Schatten unheimliche "
37 "Spielchen.\n" );
38 AddDetail( ({ "boden" }),
39 "Der Boden ist schwarz wie die Nacht.\n" );
40 AddDetail( ({ "decke" }),
41 "Schleimige Faeden scheinen von der dunklen Decke "
42 "zu haengen.\n" );
43 AddDetail( ({ "schatten" }),
44 "Die Schatten erfuellen den ganzen Raum und lassen "
45 "Dich nur schemenhafte Details\nerblicken.\n" );
46 AddDetail( ({ "details", "schemen" }),
47 "Ein Informationsstand sowie vier Schlangen von "
48 "Leuten sind als Schemen in\nden Schatten erkennbar.\n" );
49 AddDetail( ({ "schleim", "faeden", "schleimfaeden" }),
50 "Die Schleimfaeden haengen von der Decke und drohen Dir auf "
51 "den Kopf zu\ntropfen. Ein Froesteln schuettelt Dich.\n" );
52 AddDetail( ({ "schalter" }),
53 break_string( "Vor den Schaltern stehen lange Schlangen von "
54 "Leuten, die auch gerne ein Haus haetten. Es "
55 "gibt einen Antragsschalter, einen "
56 "Ratenzahlungsschalter, einen Ausgabeschalter und "
57 "einen Geldkartenschalter. Vor jedem Schalter "
58 "steht eine Schlange von mehr oder weniger "
59 "geduldig wartenden Leuten. Du wirst Dich wohl "
60 "anstellen muessen...", 78 ) );
61 AddDetail( ({ "stand", "informationsstand" }),
62 "Hier kannst Du fuer den unverschaemten Preis von 10000 "
63 "Muenzen die Kommen-\ntare zum Bausparvertrag erwerben. "
64 "Das geht mit 'kaufe kommentar', ist aber\n"
65 "angesichts des hohen Preises fast nicht anzuraten.\n" );
66 AddDetail( ({ "ausgabeschalter", "hausausgabeschalter", "hausausgabe" }),
67 "Wenn Du alle Raten fuer Dein Haus eingezahlt hast, kannst "
68 "Du es hier ab-\nholen und mitnehmen. Dafuer musst Du Dich "
69 "an die Hausausgabeschlange an-\nstellen.\n" );
70 AddDetail( ({ "ratenschalter", "ratenzahlungsschalter" }),
71 "Hier kannst Du die Raten fuer Dein Seherhaus einzahlen. "
72 "Du wirst Dich\naber erst an die Zahlungsschlange anstellen "
73 "muessen.\n" );
74 AddDetail( ({ "antragsschalter" }),
75 "An diesem Schalter kannst Du einen Bausparvertrag beantragen. "
76 "Stell Dich\ndazu an die Antragsschlange an.\n" );
77 AddDetail( ({ "geldkartenschalter", "kartenschalter" }),
78 break_string( "Am Geldkartenschalter kannst Du die beruehmte "
79 "Seer-Card (TM) erwerben und Dein Guthabenkonto "
80 "auffuellen. Allerdings haben das auch noch "
81 "andere Leute vor - Du wirst Dich also brav "
82 "hinten an die Geldkartenschlange anstellen "
83 "muessen.", 78 ) );
84
85 q=AddItem( PATH+"queue", REFRESH_NONE,
86 ([ P_SHORT : "Eine Schlange vor dem Geldkartenschalter",
87 P_LONG : "Die Seer-Card (TM) muss ja wirklich begehrt sein. "
88 "Zumindest stehen mehrere\nLeute an der Schlange zum "
89 "Geldkartenschalter an.\n"
90 "Syntax: 'stell an kartenschlange an'.\n",
91 P_INT_SHORT : "In der Schlange vor dem Geldkartenschalter",
92 P_INT_LONG : "Du steht in der langen Schlange vor dem "
93 "Geldkartenschalter. Wenigstens geht\nes halbwegs flott "
94 "vorwaerts.\n",
95 Q_LENGTH : 7,
96 Q_CYCLE_TIME : 8,
97 Q_SUSPEND : 1,
98 Q_DEST : PATH+"sc_schalter"
99 ]) );
100
101 q->AddId( ({"geldkartenschlange", "kartenschlange"}) );
102
103 q=AddItem( PATH+"queue", REFRESH_NONE,
104 ([ P_SHORT : "Eine Schlange vor dem Hausausgabeschalter",
105 P_LONG : "In dieser Schlange stehen Leute vor dem "
106 "Hausausgabeschalter an.\n"
107 +"Syntax: 'stell an ausgabeschlange an'.\n",
108 P_INT_SHORT : "In der Schlange vor dem Hausausgabeschalter",
109 P_INT_LONG : "Du wartest vor dem Hausausgabeschalter.\n",
110 Q_SUSPEND : 1,
111 Q_DEST : PATH+"sb_ausgabe"
112 ]) );
113
114 q->AddId( ({"hausausgabeschlange", "ausgabeschlange" }) );
115
116 q=AddItem( PATH+"queue", REFRESH_NONE,
117 ([ P_SHORT : "Eine Schlange vor dem Schalter zur Ratenzahlung",
118 P_LONG : "Wenn Du eine Rate bezahlen willst, solltest Du "
119 "Dich an dieser Schlange\nanstellen.\n"
120 +"Syntax: 'stell an ratenschlange an'.\n",
121 P_INT_SHORT : "In der Schlange vor dem Schalter zur "
122 "Ratenzahlung",
123 P_INT_LONG : "Du wunderst Dich ein wenig ueber die "
124 "Massen potentieller Ratenzahler.\n",
125 Q_LENGTH : 8,
126 Q_CYCLE_TIME : 10,
127 Q_DEST : PATH+"sb_einzahlung",
128 Q_SUSPEND : 1
129 ]) );
130
131 q->AddId( ({"ratenschlange", "ratenzahlungsschlange",
132 "zahlungsschlange" }) );
133
134 q=AddItem( PATH+"queue", REFRESH_NONE,
135 ([ P_SHORT : "Eine Schlange vor dem Antragsschalter",
136 P_LONG : "Die Leute in dieser Schlange wollen alle ein "
137 "eigenes Heim.\n"
138 +"Syntax: 'stell an antragsschlange an'.\n",
139 P_INT_SHORT : "In der Schlange vor dem Antragsschalter",
140 P_INT_LONG : "Du wartest inmitten anderer Antragssteller "
141 "darauf, endlich Deinen\nBausparvertrag beantragen zu "
142 "duerfen.\n",
143 Q_LENGTH : 5,
144 Q_CYCLE_TIME : 20,
145 Q_SUSPEND : 1,
146 Q_DEST : PATH+"sb_antrag"
147 ]) );
148
149 q->AddId( ({"antragsschlange"}) );
150
151 AddExit( "sueden", "/d/ebene/room/dra_str1" );
152
153 AddCmd( ({ "kauf", "kaufe" }), "kaufen" );
154}
155
156static int
157kaufen(string str)
158{
159 object tp;
160
161 if (!str || str != "kommentar") {
162 notify_fail( "Was willst Du kaufen? Hier gibt es nur Kommentare!\n" );
163 return 0;
164 }
165
166 tp = this_player();
167 if (tp->QueryMoney()<10000)
168 write( "Du hast nicht genug Geld dabei!\n" );
169 else {
170 clone_object(PATH+"kommentar")->move(tp, M_NOCHECK);
171 tp->AddMoney(-10000);
172 write( "Du zahlst 10000 Muenzen und erhaeltst dafuer einen Kommentar.\n" );
173 }
174 return 1;
175}