|
|
1.1 root 1: .ALL(LDESC) = ($say "You shouldn't be here at all. This is THE COSMIC ALL.\n")
2: ($exit 1);
3: .ALL(SDESC) = ($say "THE COSMIC ALL");
4:
5: road1(SDESC) = rdsc;
6: road1(LDESC) = ($say "You're on a dirt road going east-west. Tall stalks of
7: corn grow on either side of the road.\n");
8:
9: road2(SDESC) = rdsc; road2(LDESC) = rdsc;
10: road3(SDESC) = rdsc; road3(LDESC) = rdsc;
11: road4(SDESC) = rdsc; road4(LDESC) = rdsc;
12: road5(SDESC) = rdsc; road5(LDESC) = rdsc;
13: road6(SDESC) = rdsc; road6(LDESC) = rdsc;
14:
15: road7(LDESC) = ($say "A road from the west forks north and south here.
16: To the east is a dense-looking forest; cornfields are seen on the
17: west.\n");
18:
19: road7(SDESC) = ($say "You're at the fork in the road.\n");
20:
21: road8(SDESC) = rdsc;
22: road8(LDESC)=($say
23: "The road stretches a long way east-west. A short fence divides the
24: road from the cornfields beyond. Please don't tresspass.\n");
25:
26:
27: ROUTINE dump8; ROUTINE get8; ROUTINE entr8; ROUTINE east8; ROUTINE west8;
28:
29:
30:
31: gard1(SDESC) = gdsc; gard1(LDESC) = gdsc;
32: gard2(SDESC) = gdsc; gard2(LDESC) = gdsc;
33: gard3(SDESC) = gdsc; gard3(LDESC) = gdsc;
34: gard4(SDESC) = gdsc; gard4(LDESC) = gdsc;
35: gard5(SDESC) = gdsc; gard5(LDESC) = gdsc;
36: gard6(SDESC) = gdsc; gard6(LDESC) = gdsc;
37: gard7(SDESC) = gdsc; gard7(LDESC) = gdsc;
38: gard8(SDESC) = gdsc; gard8(LDESC) = gdsc;
39:
40: frst1(SDESC) = fdsc; frst1(LDESC) = fdsc;
41: frst2(SDESC) = fdsc; frst2(LDESC) = fdsc;
42: frst3(SDESC) = fdsc; frst3(LDESC) = fdsc;
43: frst4(SDESC) = fdsc; frst4(LDESC) = fdsc;
44:
45: farm1(SDESC) = ($say "Entrance to farm.\n");
46: farm1 (LDESC) = ($say
47: "You are at the entrance on the south side of a rundown
48: farmhouse. Someone has painted 'DIE, HEATHENS' on the
49: front door, which barely stays on its hinges. Marks of
50: smoke and flame are visible. A road runs to the south,
51: and you may walk around the farmhouse by going east or west.\n");
52:
53: farm2(LDESC) = ($say
54: "You are in the entry hall of a long-deserted old farmhouse.
55: The floor is covered with the dust of years of disuse. The
56: front door to the south is open, and there is another room
57: to the north. A stairway on the east side of the room goes up.\n");
58: farm2(SDESC) = ($say "Entry hall\n");
59:
60:
61: farm3(LDESC) = ($say
62: "You are on the east side of the farmhouse. To the east, a forest
63: stretches away into the distance. The entrance to the farmhouse
64: is to the south.\n");
65: farm3(SDESC) = ($say "East side of the farmhouse\n");
66:
67: farm4(LDESC) = ($say
68: "You are on the west side of the farmhouse. The cornfields
69: stretch away forever to the west. The entrance to the house
70: is to the south.\n");
71: farm4(SDESC) = ($say "West side of the farmhouse\n");
72:
73: farm5(LDESC) = ($say
74: "You are on the north side of the farmhouse. A high fence
75: separates you from the cornfields to the north.");
76: farm5(SDESC) = ($say "North side of the farmhouse\n");
77:
78:
79: farm6(LDESC) = ($say
80: "You are in an old, empty farmhouse kitchen. All the
81: cupboards and cabinets are bare (unless you can eat the
82: thick layer of dust which covers everything).")
83: (($prop farm6 VISIT):($say "\n"));
84: farm6(SDESC) = ($say "Farmhouse kitchen\n");
85:
86: farm7(LDESC) = ($say
87: "You are in the upstairs bedroom of the farmhouse. All the
88: windows are boarded up, and nobody has slept here for years.
89: To the east is an exit leading to the entry hall below.\n")
90:
91: (($prop bed OPEN ) :
92: ($say
93: "In the middle of the room is an old, rickety bed. The west
94: wall ")
95: (($prop panel OPEN) :
96: ($say
97: "has a panel missing, revealing a secret stairway down.\n")
98: {else}: ($say
99: "seems to have a loose panel.\n")
100: )
101: {else} :
102: ($say
103: "Against the west wall is an old, rickety bed (which may be
104: why nobody has slept here for years).\n")
105: );
106: farm7(SDESC) = ($say "Upstairs bedroom\n");
107:
108: PanL = { Try to go through panel }
109: (($prop panel OPEN):
110: ($move .ME cel01)
111: ($say "You descend into the gloom...\n")
112: {else}: (($eq ($loc .ME) farm7):(cg))
113: );
114:
115:
116: town1(SDESC) = ($say "One horse town.\n");
117: town1(LDESC) = ($say
118: "You are at the northern end of a one-horse town. Although the buildings
119: are in good shape, all seem deserted. You can't even find one horse.
120: To the east is an old smithy. On the west side of the street is an
121: abandoned hotel. The street runs north and south.\n");
122:
123: town2(SDESC) = ($say "One horse business district.\n");
124: town2(LDESC) = ($say
125: "You are at the southern end of a one-horse town. This is the
126: business district. On the east side of the street is an old
127: building with a tastefully lettered sign, 'Arpa-Citizen's Savings'.
128: To the west is the legendary 'Packet Inn'. The street runs north-south.\n");
129:
130: town3(SDESC) = ($say "Blacksmith's Shop.\n");
131: town3(LDESC) = ($say
132: "You're in what is left of a once-thriving blacksmith's shop.
133: Long ago abandoned, nothing much of interest remains.\n");
134:
135: town4(SDESC) = ($say "Flophouse.\n");
136: town4(LDESC) = ($say
137: "You're in the Flophouse hotel. Never worth the visit even in
138: its heyday, a quick search reveals nothing but a lot of dusty rooms.\n");
139:
140: town5(SDESC) = ($say "Arpa-Citizen's Savings.\n");
141: town5(LDESC) = ($say
142: "You are in the ancient and venerable institution of Arpa-Citizen's
143: Savings (there's a branch in your town). The lobby is tastefully
144: decorated in marble. The only feature is a strange sweet-smelling
145: well in the center of the room. A mysterious plaque on the side ")
146: ($say
147: "reads:
148: 'Drop your bits here!'
149: ");
150: TWN5x =
151: (($eq ($verb) drop): (TWN5y));
152: TWN5y =
153: (cdrop) { Do the right thing }
154: ($say
155: "A strange glowing network of lights appears, and you can read:\n")
156: (($prop ($dobj) POINT):
157: ($setg SCORE ($plus @SCORE ($prop ($dobj) POINT)))
158: ($move ($dobj) .ALL)
159: ($say " Your account is now at $")($num @SCORE)
160: ($say ".\n Thank you for letting Arpa-Citizen's be your host.\n")
161: {else}:
162: ($say " Your deposit is worthless")
163: (($pct 25):
164: ($say ", but thanks for the trinket!\n")
165: ($move ($dobj) .ALL)
166: {else}:
167: ($say "! Keep it!\n")
168: )
169: )
170: ($say "The Arpa network mercifully disappears.\n")
171: ($exit 1) { Short circuit the verb }
172: ;
173:
174: town6(SDESC) = ($say "The Packet Inn.\n");
175: town6(LDESC) =
176: ($say
177: "You are at that famous old saloon, the Packet Inn. Thousands
178: of the local adventurers drank 'till they were totally zorked in
179: this colorful old haunt. A little wandering convinces you that
180: nothing much is to be seen.\n");
181:
182: {*** DUNGEON PROPER ***}
183: cel01(LDESC) = ($say
184: "You are in a secret cellar below the farmhouse. In the
185: corner of one wall is a strange insignia composed of red
186: and green squares, joined at the corners. Passages
187: lead to north, west and south. An old stairway leads up and out.\n")
188: ($move insignia cel01);
189: cel01(SDESC) = ($say "Secret cellar.\n")
190: ($move insignia cel01);
191:
192: cel02(LDESC) = ($say
193: "You are in a cool cave, once used for the storage of rare
194: wines. A cool breeze from the caves to the north keeps this cave
195: at an even temperature the year round. Exits can be seen
196: to the south and east.\n");
197: cel02(SDESC) = ($say "Cool cave.\n");
198:
199: { cel03 was moved to after cel08 }
200:
201:
202: cel04(LDESC) = ($say
203: "This is a small temple to Elbereth, Queen of the Stars. The walls
204: glow with a warm iridescence of their own. They are covered
205: with murals depicting the kindling of the stars at the Beginning of
206: Days. In one corner, someone has added a strange insignia composed
207: of red and white squares, joined at the corners. Passages lead
208: east and west, and a stairway to the north leads down into darkness.\n")
209: ($move insignia cel04);
210: cel04(SDESC) = ($say "Temple to Elbereth.\n")
211: ($move insignia cel04);
212: cel04(LIGHT)=TRUE;
213:
214:
215: cel05(LDESC) = ($say
216: "You are in an icy cave. All the walls are covered with thick
217: layers of ice. The cave continues north and south, and there
218: are side tunnels leading to the northeast and northwest.\n");
219: cel05(SDESC) = ($say "Ice Cave.\n");
220:
221: cel06(LDESC) = ($say
222: "You have reached a large cavern of ice. You cannot see
223: the roof, but you are sure it is covered with icicles.
224: There are exits east and west.\n");
225: cel06(SDESC) = ($say "Great Ice Cavern.\n");
226:
227:
228: cel07(LDESC) = ($say
229: "You are in a tiny side room where the ice dragon keeps his
230: single prize treasure. You may leave through a western doorway.\n");
231: cel07(SDESC) = ($say "Dragon's Treasure Room.\n");
232:
233: cel08(LDESC) = ($say
234: "You are in an old abandoned room, once the resident of a frustrated
235: artist. A huge mural depicting a barren wasteland covers the west
236: wall. A dim glow comes from the corridor to the east.\n");
237: cel08(SDESC) = ($say "Artist's Retreat.\n");
238:
239: cel03(LDESC) = ($say
240: "You are standing on the north bank of a frozen underground
241: river. The source of the river seems to have been to the
242: west, and you can walk that way on the ice. However, to
243: the northeast, the river forms a frozen waterfall you can
244: slide down.\n");
245: cel03(SDESC) = ($say "Top of frozen fall.\n");
246:
247: cel09(LDESC) = ($say
248: "You are at the southern end of a dry river gorge. The source
249: of the river was once a waterfall to the south, but for some reason
250: it seems frozen solid. The riverbed continues north.\n");
251: cel09(SDESC) = ($say "Southern gorge.\n");
252:
253: cel10(LDESC) = ($say
254: "You are in a dark cave. The low-hanging stalactites and tall
255: stalagmites cast eerily human-like shadows on the craggy walls.
256: A roughly-hewn stairway to the south is lit by a dim illumination
257: from above, while a slimy pit in the middle of the room leads
258: down into even inkier blackness. The system of caverns continues
259: to the west.\n");
260: cel10(SDESC) = ($say "Shadowy cave.\n");
261: CELdL =
262: (($and (See [clear crystal] ($cont ($loc .ME)) )
263: ($prop [clear crystal] LIGHT)):
264:
265: ($say
266: "You are in an impossibly dark cave. Only the light from your
267: magic crystal makes it possible to see, even dimly, here. You
268: can make out a tunnel leading north, and another leading east.
269: No other exits are visible.\n")
270: : ($say "It's mighty dark in here!")
271: ((See globe ($cont ($loc .ME))):
272: (($prop globe LIGHT):
273: ($say
274: " Even your glowing globe is barely visible!")
275: )
276: )
277: ($say "\n")
278: ($setg DARKG TRUE)
279: );
280: cel11(LDESC) = CELdL;
281: CELdS =
282: ($say "DARK cave.\n")
283: (($and (See [clear crystal] ($cont ($loc .ME)) )
284: ($prop [clear crystal] LIGHT)):
285: ($exit 0):($setg DARKG TRUE));
286: cel11(SDESC) = CELdS;
287:
288: cel12(LDESC) = CELdL;
289: cel12(SDESC) = CELdS;
290:
291: cel13(LDESC) = ($say
292: "You are on a large underground lake of ice, thick enough
293: to walk on. To the west you can dimly make out a cavern
294: entrance; to the east is an icy river you can walk on.\n")
295: (($prop cel13 HOLED):
296: ($say
297: "In the middle of the lake is a hole; icy water sloshes about
298: two feet below the ice.\n")
299: );
300: cel13(SDESC) = ($say "Icy lake.\n");
301:
302: cel14(LDESC) = (($ge ($prop .ME HAS) ($prop globe WEIGH)):
303: ($say
304: "Whatever it is you're carrying drags you down into the icy depths!\n")
305: (die)
306: )
307: ($say
308: "You are swimming beneath the ice. There seems to be light to the
309: west, but you can't hold your breath for long...\n")
310: ;
311: cel14(SDESC) = ($say "Back in the icy lake.\n");
312:
313: cel15(LDESC) = ($say
314: "You are on a sandy beach in a small cave. A small pool of water
315: comes up to the beach, and a quick survey of the place shows that it
316: is completely covered by the stony roof. You can walk up to the
317: back of the cave, but the pool seems to be the only other exit.\n");
318: cel15(SDESC) = ($say "Sandy beach.");
319:
320: cel16(LDESC) = ($say
321: "You are at the back of a small cave. A sandy shore slopes down
322: to a blue pool of water. To the west is a small crawlway.\n");
323: cel16(SDESC) = ($say "Back of cave.\n");
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.