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