cons LANTERNLEFT = 5, MAXISCORE = 619, /*I don't think MAXISCORE value is right*/ RADIOACTIVETIME = 60, MAXWEIGHT = 27, DIEPENALTY = 50; var _armed, _appreciated, _badmove, _bowvalue, _badgeon, _breathheld, _carrying, _count, _counter, _carryweight, _carsdead, _comb1, _comb2, _comb3, _comb4, _comb_w1, _comb_w2, _comb_w3, _comb_w4, _dark, _detonated, _dug, _demerits, _dogdead, _enginesgone, _fudgeout, _getout, _glop, _guarddead, _here, _hung, _ignore, _holding, _input, _loc, _lantern_timeleft, _muddied, _moves, _noun, _noun2, _noun3, _nounstring, _noun2string, _noun3string, _net, _pulledblue, _potted, _pulledgreen, _pulledred, _opentrap, _pulledright, _pulledtimes, _placed, _riddleme, _ringon, _riddleyes, _riddlenumber, _shoredug, _slime, _screwed, _radioactive_time, _spook, _slashed, _score, _shoeson, _sublocone, _subloctwo, _tried, _terse, _temp1, _temp2, _there, _torchon, _unbolted, _verb, _verbstring, _word, _waresafeopen, _welderlit, _whorebagged, _whorefucked, _windowsmashed, _wearing; /* !!!!!!!!!!!!!!!!!!!!!! */ thing _: _directions ("n", "north", "s", "south", "e", "east", "w", "west", "nw", "northwest", "ne", "northeast", "se", "southeast", "sw", "southwest", "u", "up", "d", "down", "climb", "fly", "jump", "swim", "dive", "float"), _ignorelist ("to", "from", "with", "on", "by", "around", "under", "over", "beside", "maybe", "because", "why", "why?", "how", "who", "who?", "when", "when?", "the", "a", "an", "off"), _weight nil, _hint nil, _name nil, _hintvalue nil, _description nil, _encounter nil, _contents nil, _water nil, _value nil, _torch nil; thing _riddles: 0 "What has roots as nobody sees,%nIs taller than trees,%n" " Up, up it goes,%n And yet never grows?%n", 1 "Voiceless it cries,%nWingless flutters,%n" "Toothless bites,%nMouthless mutters.%n", 2 "It cannot be seen, cannot be felt,%n" "Cannot be heard, cannot be smelt,%n" "It lies behind stars and under hills%n" " And empty holes it fills%n" "It comes first and follows after,%n" " Ends life, kills laughter.%n", 3 "A box without hinges, key, or lid,%n" "Yet golden treasure within is hid.%n", 4 "Alive without breath%nAs cold as death;%n" "Never thirsty, ever drinking,%nAll in mail never clinking.%n", 5 "This thing all things devours:%n" "Birds, beasts, trees, flowers%nGnaws iron, bites steel;%n" "Grinds hard stones to meal;%nSlays kings, ruins town,%n" "And beats high mountains down.%n"; thing _riddles_answer: 0 "mountain", 1 "wind", 2 "dark", 3 "egg", 4 "fish", 5 "time"; thing _combinations: 0 "r00", 1 "l00", 2 "r01", 3 "l01", 4 "r02", 5 "l02", 6 "r03", 7 "l03", 8 "r04", 9 "l04", 10 "r05", 11 "l05", 12 "r06", 13 "l06", 14 "r07", 15 "l07", 16 "r08", 17 "l08", 18 "r09", 19 "l09", 20 "r10", 21 "l10", 22 "r11", 23 "l11", 24 "r12", 25 "l12", 26 "r13", 27 "l13", 28 "r14", 29 "l14", 30 "r15", 31 "l15", 32 "r16", 33 "l16", 34 "r17", 35 "l17", 36 "r18", 37 "l18", 38 "r19", 39 "l19", 40 "r20", 41 "l20", 42 "r21", 43 "l21", 44 "r22", 45 "l22", 46 "r23", 47 "l23", 48 "r24", 49 "l24", 50 "r25", 51 "l25", 52 "r26", 53 "l26", 54 "r27", 55 "l27", 56 "r28", 57 "l28", 58 "r29", 59 "l29", 60 "r30", 61 "l30", 62 "r31", 63 "l31", 64 "r32", 65 "l32", 66 "r33", 67 "l33", 68 "r34", 69 "l34", 70 "r35", 71 "l35", 72 "r36", 73 "l36", 74 "r37", 75 "l37", 76 "r38", 77 "l38", 78 "r39", 79 "l39", 80 "r40", 81 "l40", 82 "r41", 83 "l41", 84 "r42", 85 "l42", 86 "r43", 87 "l43", 88 "r44", 89 "l44", 90 "r45", 91 "l45", 92 "r46", 93 "l46", 94 "r47", 95 "l47", 96 "r48", 97 "l48", 98 "r49", 99 "l49", 100 "r50", 101 "l50", 102 "r51", 103 "l51", 104 "r52", 105 "l52", 106 "r53", 107 "l53", 108 "r54", 109 "l54", 110 "r55", 111 "l55", 112 "r56", 113 "l56", 114 "r57", 115 "l57", 116 "r58", 117 "l58", 118 "r59", 119 "l59", 120 "r60", 121 "l60", 122 "r61", 123 "l61", 124 "r62", 125 "l62", 126 "r63", 127 "l63", 128 "r64", 129 "l64", 130 "r65", 131 "l65", 132 "r66", 133 "l66", 134 "r67", 135 "l67", 136 "r68", 137 "l68", 138 "r69", 139 "l69", 140 "r70", 141 "l70", 142 "r71", 143 "l71", 144 "r72", 145 "l72", 146 "r73", 147 "l73", 148 "r74", 149 "l74", 150 "r75", 151 "l75", 152 "r76", 153 "l76", 154 "r77", 155 "l77", 156 "r78", 157 "l78", 158 "r79", 159 "l79", 160 "r80", 161 "l80", 162 "r81", 163 "l81", 164 "r82", 165 "l82", 166 "r83", 167 "l83", 168 "r84", 169 "l84", 170 "r85", 171 "l85", 172 "r86", 173 "l86", 174 "r87", 175 "l87", 176 "r88", 177 "l88", 178 "r89", 179 "l89", 180 "r90", 181 "l90", 182 "r91", 183 "l91", 184 "r92", 185 "l92", 186 "r93", 187 "l93", 188 "r94", 189 "l94", 190 "r95", 191 "l95", 192 "r96", 193 "l96", 194 "r97", 195 "l97", 196 "r98", 197 "l98", 198 "r99", 199 "l99"; thing lantern: _name "a small gas lantern", _weight 3; thing flamethrower: _name "an Army regulation type A flamethrower", _weight 4; thing (marblechunk, marble, chunk, "marble-chunk"): _name "a piece of broken marble", _value 20, _weight 3; /* The following are fudge objects */ thing bed: _name "a wall bed", _weight 999; thing breath: _name "vaporous breath", _weight 0; thing button: _name "a small button", _weight 999; thing submarine: _name "a yellow submarine", _weight 999; thing guard: _name "a security guard", _weight 999; /* More real objects */ thing (rock, stone): _name "a bloody great rock", _weight 7; thing (bag, lunchbag): _name "an old, dirty lunch bag", _weight 0; thing painting: _name "an erotic painting", _weight 2; thing wrench: _name "an adjustable wrench", _weight 1; thing gadget: _name "a small little red-painted gadget, with an " "antenna coming out of it", _weight 1; thing skull: _name "A human skull, with living eyes in the exposed sockets", _value 7, _weight 1; /* Things in pits area */ thing ring: _name "a small golden ring", _weight 0; thing (tongs, tong): _name "a pair of fire tongs", _weight 2; thing (axe, ax): _name "a heavy double bladed axe", _weight 4; thing (bar, "iron-bar"): _name "a bar of iron", _weight 3; thing (slime, "red-slime"): _name "a mass of red slime", _weight 999; thing brand: _name "a burning wooden brand", _weight 2; /* More things elsewhere */ thing (shakers, saltshakers, "salt-shakers"): _name "a set of jewel-encrusted salt-shakers", _value 15, _weight 1; thing (figure, figurine, "glass-figure", lovers): _name "a cut-glass figure of a pair of nude lovers embracing", _value 15, _weight 1; thing (diamond, diamonds, ice): _name "a couple of diamonds the size of baseballs", _value 20, _weight 4; thing (brick, masonry): _name "a broken brick, with an erotic carving chiseled into it", _value 15, _weight 3; thing (fish, goldfish): _name "a fish with golden scales", _value 15, _weight 1; thing (statue, sculpture, "free-form", platinum): _name "a tall, very graceful free-form statue made of platinum", _value 25, _weight 5; thing (grog, "sessile-grog"): _name "a sessile grog - cone shaped, very hairy, and very vicious", _weight 999; thing (kzin, kzinti): _name "a very ferocious kzin, hungry for human flesh", _weight 999; thing plover: _name "a plover, laying eggs left and right. It seems " "rather vicious", _weight 999; thing (banth, "she-banth"): _name "a vicious she-banth on the hunt. She has very long fangs", _weight 999; thing shovel: _name "an old shovel. Painted on the handle:" " 'Souvenier of Crossroads Dig'", _weight 4; thing bolt: _name "a bolt", _value 20, _weight 1; thing shoes: _name "a clean pair of Adidas running shoes", _value 15, _weight 2; thing knife: _name "a very sharp little knife", _value 14, _weight 1; thing fruit: _name "a bunch of ripe fruit", _value 10, _weight 2; thing pot: _name "an old, very rusty kitchen pot", _weight 2; thing crowbar: _name "an iron crowbar", _weight 4; thing blob: _weight 2, _name "an odd shaped blob of reeking greenish filth"; thing gold: _name "a large, pure, glittering nugget of gold", _weight 2; thing badge: _weight 0, _name "a badge with 'I've been there' written on it"; thing jewels: _name "a pile of jewels, from a mechanism of some sort", _weight 2; thing (welder, weldingtorch, "welding-torch", torch): _weight 3, _name "an oxygen-acetalene welding-torch"; thing keys: _name "a ring of keys", _value 10, _weight 1; thing (eggs, egg): _name "a bunch of plover's eggs", _value 25, _weight 2; thing hole: _name "a round, dark hole", _value 15, _weight 0; thing (paper, scrap): _name "a scrap of paper with writing on it", _weight 0; thing (booklet, book): _name "a little booklet", _weight 1; thing (bomb, "h-bomb", device): _name "an 800 megaton black-painted " "hydrogen bomb,%n 1.5 meters in diameter, " "and 3.5 meters long", _value 40, _weight MAXWEIGHT; /* more things, not really nice */ thing blech: _name "a digusting fluidy pile of strong smelling vomit", _value -10, _weight 1; thing (yucch, excrement): _name "a huge greenish-brown pile of reeking human excrement", _value -10, _weight 1; thing urgh: _name "a large puddle of rancid-smelling urine", _value -10, _weight 1; thing (radioactiveblech, filth): _name "a mess of glowing, reeking, radioactive filth", _value -20, _weight 1; thing (radioactiveyuch, crap): _name "a glowing pile of reeking, radioactive excretement.", _value -20, _weight 1; thing radioactiveurgh: _name "a glowing puddle of rancid, radioactive urine", _value -20, _weight 1; /* Predeclaration of locations (In order or appearance) */ thing pillar: ; thing pillarbase: ; thing underpillar: ; thing tunnel: ; thing greathall: ; thing roomsouth: ; thing roomnorth: ; thing wc: ; thing roomy: ; thing boudoir: ; thing graniteroom: ; thing balcony: ; thing stairone: ; thing stairtwo: ; thing dock: ; thing boat: ; thing shore: ; thing crossroads: ; thing padone: ; thing padtwo: ; thing padthree: ; thing lakepathone: ; thing lakepathtwo: ; thing holeinwall: ; thing treebase: ; thing treeinterior: ; thing ledge: ; thing branch: ; thing entrance: ; thing passageone: ; thing passagetwo: ; thing passagethree: ; thing hallone: ; thing halltwo: ; thing skullroom: ; thing hallpastone: ; thing atticone: ; thing attictwo: ; thing hallthree: ; thing roundhallone: ; thing roundhalltwo: ; thing roundhallthree: ; thing roundhallfour: ; thing roundhallfive: ; thing roundhallsix: ; thing roundhallseven: ; thing roundhalleight: ; thing roundhallnine: ; thing roundhallten: ; thing trapdoor: ; thing highwayone: ; thing highwaytwo: ; thing highwaythree: ; thing highwayfour: ; thing highwayfive: ; thing countryroadone: ; thing countryroadtwo: ; thing countryroadthree: ; thing countryroadfour: ; thing countryroadfive: ; /* Places having to do with the farm: */ thing farmyard: ; thing orchard1: ; thing orchard2: ; thing houseporch: ; thing fronthall: ; thing kitchen: ; thing backhall: ; thing farmpit: ; thing cellar: ; thing coatroom: ; thing barnone: ; thing barntwo: ; thing barnthree: ; thing pigstyone: ; thing pigstytwo: ; thing hayloftone: ; thing haylofttwo: ; thing hayloftthree: ; thing hayloftfour: ; thing roofone: ; thing rooftwo: ; thing roofthree: ; /* Locations relating to the pond: */ thing pondshore: ; thing pondsurfaceone: ; thing pondsurfacetwo: ; thing pondsurfacethree: ; thing pondsurfacefour: ; thing underpondone: ; thing underpondtwo: ; thing underpondthree: ; thing underpondfour: ; thing underpondfive: ; /* Locations farther on: */ thing cavernone: ; thing caverntwo: ; thing cavernthree: ; thing cavernfour: ; thing cavernlost: ; /* Rocky paths: */ thing rockyhilltop: ; thing rockypathone: ; thing rockypathtwo: ; thing rockypaththree: ; thing rockypathfour: ; thing rockypathfive: ; thing rockypathsix: ; thing rockypathseven: ; thing rockypatheight: ; thing rockypathnine: ; thing rockypathten: ; thing rockypatheleven: ; thing rockypathtwelve: ; thing rockypaththirteen: ; thing rockypathfourteen: ; thing rockypathfifteen: ; thing rockypathsixteen: ; thing rockypathseventeen: ; thing cairn: ; thing undercairnone: ; thing undercairntwo: ; thing undercairnthree: ; thing undercairnfour: ; /* To continue: */ thing sub1: ; thing sub2: ; thing underdock: ; thing otherdock: ; thing docksidefive: ; thing docksidefour: ; thing docksidethree: ; thing docksidetwo: ; thing docksideone: ; thing warehouse: ; thing complexstart: ; thing corridorone: ; thing corridortwo: ; thing corridorthree: ; thing corridorfour: ; thing corridorfive: ; thing corridorsix: ; thing corridorseven: ; thing corridoreight: ; thing office: ; thing walkinsafe: ; thing labone: ; thing labtwo: ; thing labthree: ; thing labfour: ; thing labfive: ; thing powerroomone: ; thing powerroomtwo: ; thing powerroomthree: ; thing powerroomfour: ; thing powerroomfive: ; thing powerroomsix: ; /* And now for the maze of octopusses' tunnels: */ thing octocave: ; thing oct1: ; thing oct2: ; thing oct3: ; thing oct4: ; thing oct5: ; thing oct6: ; thing oct7: ; thing oct8: ; thing oct8: ; thing oct10: ; thing oct11: ; thing oct12: ; thing oct13: ; thing oct14: ; thing oct15: ; thing oct16: ; thing oct17: ; thing oct18: ; /* And continue: */ thing weaponsrepository: ; thing octopussesgardenintheshade: ; /* And to the other end of the world: */ thing glasswalkone: ; thing glasswalktwo: ; thing glasswalkthree: ; thing glasswalkfour: ; thing glasswalkfive: ; thing glasswalksix: ; thing glasswalkseven: ; thing glasswalkeight: ; thing glasswalknine: ; thing glasswalkten: ; thing templeplatform: ; thing templestart: ; thing littleroomtemple: ; thing maintemple1: ; thing maintemple2: ; thing tempbase1: ; thing tempbase2: ; /* And to the wicked lava paths: */ thing lavapathone: ; thing lavapathtwo: ; thing lavapaththree: ; thing lavapathfour: ; thing lavapathfive: ; thing lavapathsix: ; thing lavapathseven: ; thing lavapatheight: ; thing lavapathnine: ; thing lavapathten: ; thing lavapatheleven: ; thing lavapathtwelve: ; thing lavapaththirteen: ; thing lavapathfourteen: ; thing lavapathfifteen: ; thing lavapathsixteen: ; thing lavapathseventeen: ; thing lavapatheightteen: ; thing lavapathnineteen: ; thing lavapathtwenty: ; thing lavapathtwentyone: ; thing lavapathtwentytwo: ; thing lavapathtwentythree: ; thing lavapathtwentyfour: ; thing pileofrocks: ; /* And now for a maze in the forest: */ thing fone: ; thing ftwo: ; thing fthree: ; thing ffour: ; thing ffive: ; thing flostone: ; thing flosttwo: ; /* And of course, our little 'dungeon' */ thing pits: ; thing pitpass1: ; thing pitpass2: ; thing pitpass3: ; thing pitelev1: ; thing pitelev2: ; thing pitelev3: ; thing pitelev4: ; thing pitelev5: ; thing pitelev6: ; thing pitelev7: ; thing pitelev8: ; thing pittunnel1: ; thing pittunnel2: ; thing pittunnel3: ; thing pittunnel3_2: ; thing pittunnel4: ; thing pittunnel5: ; thing pittunnel6: ; thing pitroom1: ; thing pitringroom: ; thing pitwinding1: ; thing pitwinding2: ; thing pitwinding3: ; thing pitwinding4: ; thing pitwinding5: ; thing pitroom2: ; thing pitroom3: ; thing pithob1: ; thing pithob2: ; thing pithob3: ; thing pithob4: ; thing sulfurpit: ; thing pithall1: ; thing pithall2: ; thing pithall3: ; thing pithall4: ; thing pithall5: ; thing icecave1: ; thing icecave2: ; thing icecave3: ; thing icecave4: ; thing volcano1: ; thing pitwet1: ; thing pitwet2: ; thing pitwet3: ; thing pitpass0: ; /* And locations after the bomb blast: */ thing glassafter: ; thing roomnorthafter: ; thing roomsouthafter: ; thing fissureone: ; thing fissuretwo: ; thing fissurethree: ; thing fissurefour: ; thing fissurefive: ; thing dockafter: ; thing shoreafter: ; thing crossroadsafter: ; thing dugout: ; thing charcoalone: ; thing charcoaltwo: ; thing charcoalthree: ; thing lakepathoneafter: ; thing lakepathtwoafter: ; thing rubbleheapafter: ; thing lakeafterone: ; thing lakeaftertwo: ; thing lakeafterthree: ; thing templeafter: ; thing pa1: ; thing pa2: ; thing pa3: ; thing pa4: ; thing pa5: ; thing pa6: ; thing pa7: ; thing pa8: ; thing pa9: ; thing pa10: ; thing pa11: ; thing osa1: ; thing osa2: ; thing osa3: ; thing lowrockbuilding: ; /* Procedures for various things */ proc _see(_moving): var _x, _r; if _dark and (_loc = underpillar or _loc = tunnel) then output "It's bloody damn DARK here!%n"; /* This is bugging me, so I will leave it for a while */ elif _slime then if _ringon then output "You are a miserable crawling blob of green slime, " "wearing a golden ring, and are "; else output "You are a miserable crawling blob of green slime, " "and are "; fi; else output "You are "; if _breathheld then output "holding your breath, "; fi; if _shoeson or _badgeon or _ringon then output "wearing "; fi; if _shoeson then output "a pair of running shoes, "; fi; if _badgeon then output "a little badge, "; fi; if _ringon then output "a golden ring, "; fi; if _breathheld or _shoeson or _badgeon or _ringon then output "and are "; fi; output _loc._name; if _terse and _loc._encounter isnt absent and _moving then output ".%n"; elif _loc._description is proc then _loc._description(); else output _loc._description; fi; if _loc._contents then output "Close by:%n"; for _x in _loc._contents do output " ", _x._name, newline; od; _x := 0; fi; fi; corp; proc _yesno() result: var response, yn, word; yn := -1; while yn = -1 do output "Please reply yes, ok, or no.%n"; response := input; if response is absent then yn := 0; _getout := true; else for word in response do if word = "yes" or word = "ok" or word = "y" then yn := 1; elif word = "no" then yn := 0; else yn := -1; fi; od; fi; od; yn = 1 corp; proc _die(): var _item, r; output "%n%nYou are dead. Deceased.%nYou've run down the curtain,%n" "and gone to meet your maker.%nYou are no more.%nYou are an EX-" "PERSON!!%n"; _score := _score - 33; output "Shall I try to reincarnate you, or do you want to " "push up the daisies?%n"; if not _yesno() then _getout := true; else if _carrying then _temp1 := _loc; for _temp2 in _carrying do _carrying <- _temp2; if _temp2._value isnt absent then _score := _score - _temp2._value; fi; _temp1._contents <+ _temp2; od; fi; _loc := pillar; fi; _see(false); corp; proc _checkcomb() result: var i, c, inp, res; inp := input ; res := true; c := 1; if not inp then res := false; else for i in inp do if c = 1 and i ~= _comb1 then res := false; elif c = 2 and i ~= _comb2 then res := false; elif c = 3 and i ~= _comb3 then res := false; elif c = 4 and i ~= _comb4 then res := false; fi; c := c + 1; od; fi; if c = 5 then res else false fi corp; proc _checkcomb_w() result: var i, c, inp, res; inp := input; res := true; c := 1; if not inp then res := false; else for i in inp do if c = 1 and i ~= _comb_w1 then res := false; elif c = 2 and i ~= _comb_w2 then res := false; elif c = 3 and i ~= _comb_w3 then res := false; elif c = 4 and i ~= _comb_w4 then res := false; fi; c := c + 1; od; fi; if c = 5 then res else false fi corp; proc _riddleanswer() result: var i, c, inp, res; inp := input; res := true; c := 1; if not inp then res := false; else for i in inp do if c = 1 and i ~= _riddleyes then res := false; fi; od; fi; if c = 2 then res else false fi corp; proc _move(_dest): if _dest is absent then output "There is no way to go in that direction.%n"; _badmove := true; elif _dest is proc then _dest(); else _loc := _dest; if _loc._value isnt absent then _score := _score + _loc._value; _loc -- _value; fi; if _badmove then _see(true); fi; _loc.._encounter := true; fi corp; proc _inventory(): var _x; if _carrying then output "You are curently carrying:%n"; for _x in _carrying do output " ", _x._name, "%n"; od; output newline; _x := 0; else output "You aren't carrying anything, old freep.%n"; fi; corp; proc _dropall(): var _got, _t1_, _t2_; if _carrying then _t1_ := _loc; for _t2_ in _carrying do _carrying <- _t2_; _carryweight := _carryweight - _t2_._weight; _t1_._contents <+ _t2_; od; fi; corp; /* Procedures used in the pits */ proc _pitpass2(): if bar in _carrying then output "You step into the room, but the weight of the bar causes " "the floor to bend alarmingly...%n%n CRACK!!!!!%n" " AUUUGGGGGGHHHHHHH!!!!!!!!%n%nThe floor merrily " "gives way, and you plummet down... down... down... Crash!! " "You land at the bottom of the shaft, miraculously unhurt.%n"; _move(pitelev1); elif not ring in _wearing then output "You step into the room, " "but your weight is too much for the floor. It starts to " "tilt...%n WHOOOSHHHH!!%n...you slide off it, and " "fall down...down...*n***CRUNCH***%nYou land at the bottom " "of the shaft, fairly unhurt.%n"; _move(pitelev1); else _move(pitpass2); fi; corp; proc _traptolake(): if _detonated then _move(lakeaftertwo); else output "You lift the trapdoor, and are immediately swept away " "and down by the tremendous flood of water that pours " "in through the open trapdoor.%n"; _move(pitelev1); fi; corp; proc _pe_ring2(): if ring in _wearing then _move(pitelev2); else output "You cannot go in that direction.%n"; fi corp; proc _topitelev2(): if ring in _wearing then _move(pitelev2); else output "AUUUGGGHHHH!!! KA-THUMP!! You have just fallen to " "the bottom of the shaft, and broke your skull. I am " "going to be kind and fix it up for you, at only a " "minimal cost.%n"; _demerits := _demerits + 15; _move(pitelev1); fi; corp; proc _topitelev3(): if ring in _wearing then _move(pitelev3); else output "AUUUGGGHHHH!!! KA-THUMP!! You have just fallen to " "the bottom of the shaft, and broke your skull. I am " "going to be kind and fix it up for you, at only a " "minimal cost.%n"; _demerits := _demerits + 15; _move(pitelev1); fi; corp; proc _topitelev4(): if ring in _wearing then _move(pitelev4); else output "AUUUGGGHHHH!!! KA-THUMP!! You have just fallen to " "the bottom of the shaft, and broke your skull. I am " "going to be kind and fix it up for you, at only a " "minimal cost.%n"; _demerits := _demerits + 15; _move(pitelev1); fi; corp; proc _topitelev5(): if ring in _wearing then _move(pitelev5); else output "AUUUGGGHHHH!!! KA-THUMP!! You have just fallen to " "the bottom of the shaft, and broke your skull. I am " "going to be kind and fix it up for you, at only a " "minimal cost.%n"; _demerits := _demerits + 15; _move(pitelev1); fi; corp; proc _topitelev6(): if ring in _wearing then _move(pitelev6); else output "AUUUGGGHHHH!!! KA-THUMP!! You have just fallen to " "the bottom of the shaft, and broke your skull. I am " "going to be kind and fix it up for you, at only a " "minimal cost.%n"; _demerits := _demerits + 15; _move(pitelev1); fi; corp; proc _windingpass(): if _slime then _move(pitwinding1); else output "You can't fit through that tiny hole!%n"; fi; corp; proc _hobbit(): output "The hobbit holds up a hand and asks you to stop.%n" "'I must ask you to answer a riddle before I can let " "you pass,' he says,' and this is it:%n", _riddleme, "%n What is your answer?%n"; if not _riddleanswer() then output " 'That is wrong, I am afraid.' He goes " "over to a nearby wall, and pulls a lever. A trapdoor " "underneath you opens up, and you fall into a deep shaft.%n"; _move(sulfurpit); _demerits := _demerits + 5; fi; corp; proc _cube(): if _slime then _move(pithall4); else output "You cannot " "get by the giant gelationous cube, and if you tried, " "the cube would probably devour you. Now, you don't " "want that, do you?%n"; fi; corp; proc _slimeslide(): if _slime then output "You slurp through the grate, and slide " "down a round shaft underneath. You pop out the other end " "unharmed onto a floor.%n"; _move(pithall1); else output "You can't fit through that grate! You are far too big!%n"; fi; corp; proc _burnup(): output "Are you crazy!! That lava would make a cinder out " "of you instantly!!%n"; fi; corp; proc _totunnelunderpillar(): if _dark then output "It's too bloody dark to do that.%n"; else _move(tunnel); fi; corp; proc _standard(): output "There is no way to go in that direction.%n"; corp; proc _construction(): output "World under construction. Do not proceed past " "this point.%n"; corp; proc _mist(): _spook := ?; if _spook > 9000 then output "You walk into the shifting mists. Suddenly...%n%n" " ZZZAAPPPP!!!!!...%n%n"; _move(pillar); elif _spook > 1000 and _spook <= 9000 then output "You walk into the shifting mists. Suddenly...%n%n" " ZZZAAPPPP!!!!!...%n%n"; _move(crossroads); else output "You walk into the shifting mists. Suddenly...%n%n" " ZZZAAPPPP!!!!!...%n%n"; _move(highwayone); fi; corp; proc _teleport(): output "As you move to wards the vault-door, " "you become woozy.%nStaggering, you trip and fall. Sudd%n%n" " ...DISCONTINUITY...%n%n" " enly, you fall to your knees on a hard, rocky path.%n"; _move(rockyhilltop); corp; /* Various descriptive procedures, for locations w/ combinations */ proc _underpillar_desc(): output ". A small, concrete walled room beneath the pillar. " "A small hole is seen in the ceiling, with a rope hanging " "down from it. A low, filthy dirt tunnel leads east. " "Chiseled on the wall:%n'w 3/4 ", _comb_w3, "'%n"; corp; proc _padthree_desc(): output ". A very large, very sturdy concrete pad, set in the " "forest. There is a large hole in the concrete here, 1.5 m " "in diameter, and 3 m deep. The pad continues west. " "Chipped in the concrete by the hole:%n't 2/4 ", _comb2, "'%n"; corp; proc _roundhallfive_desc(): output ", a very long steel-walled tunnel, heading " "east and northwest. There is a steep passage leading down " "off to the side. Light comes from a glowing plastic strip " "strip set in the side of the tunnel. Scratched in the " "steel:%n'w 1/4 ", _comb_w1, "'%n"; corp; proc _kitchen_desc(): output ", an old, filthy dirt-encrusted kitchen that looks as " "though it has never been cleaned. Someone has rubbed " "with a finger in the grime on the stove:%n't 4/4 ", _comb4, "'%n"; corp; proc _cairn_desc(): output ". A cairn made of rocks, on top of a windswept " "mountain. Written in blood on one of the rocks:%n'w 4/4 ", _comb_w4, "'%n"; corp; proc _lavapathtwentytwo_desc(): output ". A winding, branching path cut through solid lava. " "Scratched on the side of the path:%n'w 2/4 ", _comb_w2, "'%n"; corp; proc _walkinsafe_desc(): output ". The walls are lined with file cabinets and safes, " "%nall marked ' TOP SECRET '. The enamel on one of the file " "cabinets is chipped, in the form of the characters:%n" "'t 1/4 ", _comb1, "'%n"; corp; /* And now some other gibberish, Allah knows what. */ proc _bombunder(): output "How you expect to fit through those tiny" " cracks in that shattered mass is beyond me!%n"; corp; proc _radioactive(): output "To that direction the land is very " "radioactive, with the ground glowing brightly. I can't" " let you kill yourself that way.%n"; corp; proc _bones(): _spook := ?; if _spook > 9500 then output "You are at the remains of the " "forest, a huge field of charcoal. " "To the north lies a skeleton of some small animal, that " "was caught in the blast, and had it's flesh seared off. " "It is very, very hot, with a dry wind from the east.%n"; elif _spook > 9000 and _spook <= 9500 then output "You are at the " "remains of the forest, a huge field of charcoal. Just to the " "east lies a blackened tree stump. It is very, very hot, with a " "dry wind from the east.%n"; elif _spook > 8000 and _spook <= 9000 then output "You are at the remains of the forest, a huge field" " of charcoal. Just to the south lies a broken human skull. " "It is very, very hot, with a dry wind from the east.%n"; else output "You are at the remains of the forest, a huge field" " of charcoal. It is very, very hot, with a dry wind from the " "east.%n"; fi; corp; proc _toosa1(): output "You plunge into the radioactive river, " "and find that it is very warm! You swim to the other side, " "and emerge glowing brighter than ever.%n"; _radioactive_time := _radioactive_time - 5; _move(osa1); corp; proc _topa10(): output "You plunge into the radioactive river, and " "swim across. You climb out, and find that you are still glowing" "with a brilliant blue light.%n"; _move(pa10); _radioactive_time := _radioactive_time - 10; corp; proc _exitout(): output "You, one of a rare few, have found the " "proper exit! Good-bye!%n"; _score := _score + 55; _getout := true; corp; proc _waterheater(): output "The water-heater is in the way!%n"; corp; proc _furnacegone(): output "You go that way and you'll be burnt for sure!!%n"; corp; proc _jumpdownhole(): output "%nAAAuugggghhhhhhhhhhhhhhhh!!%n%n" "Ker-SPLASH!!!!%n%nYou have fallen near the octopusses'" " garden in the shade!%n"; _move(underpondthree); corp; proc _topa1(): output "You slip and slide down the sides of the mound" " of broken rock.%nYou land at the bottom, unhurt except for a few" " scratches.%nThe land glows strongly here, and I am afraid you " "don't have%nmuch time to live, before you die of a radiation " "overdose.%nYou are already feeling nauseous.%n"; _radioactive_time := RADIOACTIVETIME; _spook := ?; if _spook > 9000 then pa3._contents <+ kzin; pa11._contents <+ plover; pa11._contents <+ eggs; pa8._contents <+ banth; pa5._contents <+ grog; _move(pa1); elif _spook > 8000 and _spook <= 9000 then pa6._contents <+ grog; pa9._contents <+ banth; pa2._contents <+ plover; _move(pa1); elif _spook > 7000 and _spook <= 8000 then pa5._contents <+ banth; pa8._contents <+ grog; pa1._contents <+ plover; pa10._contents <+ kzin; _move(pa1); elif _spook > 6000 and _spook <= 7000 then pa4._contents <+ grog; pa7._contents <+ banth; pa8._contents <+ plover; pa8._contents <+ eggs; pa11._contents <+ kzin; _move(pa1); elif _spook > 5000 and _spook <= 6000 then pa10._contents <+ grog; pa9._contents <+ banth; pa1._contents <+ kzin; _move(pa1); elif _spook > 4000 and _spook <= 5000 then pa3._contents <+ kzin; pa6._contents <+ plover; pa2._contents <+ banth; pa5._contents <+ eggs; osa1._contents <+ grog; _move(pa1); elif _spook > 3000 and _spook <= 4000 then pa8._contents <+ kzin; lowrockbuilding._contents <+ grog; osa2._contents <+ plover; templeafter._contents <+ banth; _move(pa1); elif _spook > 2000 and _spook <= 3000 then pa3._contents <+ banth; pa2._contents <+ kzin; pa1._contents <+ plover; pa4._contents <+ grog; _move(pa1); elif _spook > 1000 and _spook <= 2000 then pa7._contents <+ kzin; pa11._contents <+ banth; osa2._contents <+ grog; pa8._contents <+ plover; pa7._contents <+ eggs; _move(pa1); else pa9._contents <+ eggs; pa9._contents <+ plover; lowrockbuilding._contents <+ banth; pa8._contents <+ grog; osa1._contents <+ kzin; _move(pa1); fi; corp; proc _topa2(): output "You slip and slide down the sides of the mound" " of broken rock.%nYou land at the bottom, unhurt except for a few" " scratches.%nThe land glows strongly here, and I am afraid you " "don't have%nmuche time to live, before you die of a radiation " "overdose.%nYou are already feeling nauseous.%n"; _radioactive_time := RADIOACTIVETIME; _spook := ?; if _spook > 9000 then pa3._contents <+ kzin; pa11._contents <+ plover; pa11._contents <+ eggs; pa8._contents <+ banth; pa5._contents <+ grog; _move(pa2); elif _spook > 8000 and _spook <= 9000 then pa6._contents <+ grog; pa9._contents <+ banth; pa2._contents <+ plover; _move(pa2); elif _spook > 7000 and _spook <= 8000 then pa5._contents <+ banth; pa8._contents <+ grog; pa1._contents <+ plover; pa10._contents <+ kzin; _move(pa2); elif _spook > 6000 and _spook <= 7000 then pa4._contents <+ grog; pa7._contents <+ banth; pa8._contents <+ plover; pa8._contents <+ eggs; pa11._contents <+ kzin; _move(pa2); elif _spook > 5000 and _spook <= 6000 then pa10._contents <+ grog; pa9._contents <+ banth; pa1._contents <+ kzin; _move(pa2); elif _spook > 4000 and _spook <= 5000 then pa3._contents <+ kzin; pa6._contents <+ plover; pa2._contents <+ banth; pa5._contents <+ eggs; osa1._contents <+ grog; _move(pa2); elif _spook > 3000 and _spook <= 4000 then pa8._contents <+ kzin; lowrockbuilding._contents <+ grog; osa2._contents <+ plover; templeafter._contents <+ banth; _move(pa2); elif _spook > 2000 and _spook <= 3000 then pa3._contents <+ banth; pa2._contents <+ kzin; pa1._contents <+ plover; pa4._contents <+ grog; _move(pa2); elif _spook > 1000 and _spook <= 2000 then pa7._contents <+ kzin; pa11._contents <+ banth; osa2._contents <+ grog; pa8._contents <+ plover; pa7._contents <+ eggs; _move(pa2); else pa9._contents <+ eggs; pa9._contents <+ plover; lowrockbuilding._contents <+ banth; pa8._contents <+ grog; osa1._contents <+ kzin; _move(pa2); fi; corp; proc _cantclimb(): output "The slope is too steep, and covered with " "loose rock.%nYou can't climb up.%n"; corp; proc _bombtooct17(): if bomb in _carrying then output "You can't fit through that little hatchway carrying " "that tremendous bomb!!%n"; else _move(oct17); fi corp; proc _tounderpillar(): if not lantern in _carrying or _lantern_timeleft > LANTERNLEFT or _lantern_timeleft <= 0 then _dark := true; else _move(underpillar) fi; corp; proc _fromunderpillar(): _dark := false; _move(pillarbase); corp; proc _tounderpillartunnel(): if _dark then output "It is too dark to move!%n"; else _move(underpillar); fi; corp; proc _glasswalk(): if _shoeson and _muddied = false then _move(glasswalkone); elif _shoeson and _muddied = true then output "Your shoes are too muddy. You must have gotten them " "that way when you fell down the hole in the temple " "basement.%n"; else output "What?! I won't " "let you sully the walkway with your grubby feet!%n"; fi; corp; proc _block(): output "I'm afraid I can't let you go that way anymore.%n"; corp; proc _greathall(): _dark := false; _move(greathall); corp; proc _trapdoor(): if bed in _opentrap then output "You descend. Suddenly, BANG!! the bed falls down, " "covering the hole.%n%n"; _move(graniteroom); else output "You can't go in that direction now.%n"; fi corp; proc _falloff(): output "You just fell! A flare of light catches " "you in midair! Whups! It is now very gloomy, probably " "because you are in THE PITS.%n"; _move(pits); corp; proc _drown(): output "Do you want to DROWN yourself?!?%n"; corp; proc _doorhallpast(): output "The door is locked, you cannot enter.%n"; corp; proc _artistic(): if _hung then _move(hallpastone); else output "The artist says his walls are too ugly," " and won't let you pass.%n"; fi; corp; proc _glasswalkwest(): output "What?! I won't let you sully the walkway with your " "grubby feet!%n"; corp; proc _octopussysgarden(): if _badegeon then _move(octopussesgardenintheshade); else output "The octopus says he doesn't know where you've been," " and will not let you in.%n"; fi; corp; proc _moltenlava(): if _tried = 0 then output "Please do not attempt " "to go that way.%nYou will burn yourself into a little piece of " "charcoal.%n"; _tried := 1; elif _tried = 1 then output "You have fallen into the molten lava.%n" "You are now a little piece of charcoal.%n"; _die(); fi; corp; proc _quicksanddescrip(): output ", firmly stuck. However, the surrounding scenery is " "quite nice, but you can't really enjoy it at the moment.%n"; corp; proc _quicksand(): if _glop = 0 then output "The ground that way " "looks very swampy. Don't push your luck.%n"; _glop := 1; elif _glop = 1 then output "Yucch! You're up to your ankles in " "quicksand! You're stuck!%n"; _glop := 2; elif _glop = 2 then output "You are now up to your knees in the stuff!%n"; _glop := 3; elif _glop = 3 then output "Whoops! Up to your waist now!%n"; _glop := 4; elif _glop = 4 then output "You are now up to your neck!%n"; _glop := 5; elif _glop >= 5 then output "Well, as you are " "in over you're head, you are dead.%n"; _glop := 0; _loc._contents := emptylist; _carrying := emptylist; _die(); else output "If you get this output here, please tell me what you" " did. This should never occur.%n"; fi; corp; proc _pa1thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is too vicious to try and get by!%n"; else _move(pa1); fi; corp; proc _pa2thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa2); fi; corp; proc _pa3thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa3); fi; corp; proc _pa4thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa4); fi; corp; proc _pa5thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa5); fi; corp; proc _pa6thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa6); fi; corp; proc _pa7thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa7); fi; corp; proc _pa8thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa8); fi; corp; proc _pa9thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa9); fi; corp; proc _pa10thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa10); fi; corp; proc _pa11thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(pa11); fi; corp; proc _osa1thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(osa1); fi; corp; proc _osa2thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(osa2); fi; corp; proc _osa3thing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(osa3); fi; corp; proc _templeafterthing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(templeafter); fi; corp; proc _lowrockbuildingthing(): if grog in _loc._contents or plover in _loc._contents or kzin in _loc._contents or banth in _loc._contents then output "The creature is far too vicious " "to try and get by.%n"; else _move(lowrockbuilding); fi; corp; proc _bedlifted(): output "I can't. There seems to be a bed in the way.%n"; corp; proc _haylofthay(): output "There's too much hay in the way.%n"; corp; proc _jumptopond(): if _breathheld then _move(pondsurfaceone); else output "Do you want to DROWN?!?!! Your breath will be " "knocked out under that much impact.%n"; fi; corp; proc _killedguard(): if guard in _guarddead or guard in _appreciated then _move(walkinsafe); else output "The guard challenges you, and asks " "you for proper identification.%n"; fi; corp; proc _tounderdockside(): if hole in _loc._contents then output "You have fallen down out of the hole.%n"; _move(underdock); _sublocone <+ submarine; else output "You can't go " "that way, there is too much solid rock in the way.%n"; fi; corp; proc _toundercairnone(): if hole in _loc._contents then _move(undercairnone); else output "You can't go through solid rock!%n"; fi; corp; proc _subonethere(): if submarine in _sublocone then _move(sub1); else output "Do you want to drown?%n"; fi; corp; proc _subtwothere(): if submarine in _sublocone then _move(sub2); else output "Do you want to drown?%n"; fi; corp; proc _oldpot(): if submarine in _potted then output "You are at an underground dock, next to a large body of water." " The dock goes on to the south. Tied to the north end of" " the dock is a yellow submarine, with damaged engines.%n"; else output "You are at an underground dock, next to a large body " "of water. The dock goes to the south.%n"; fi; corp; proc _hungyesno(): if submarine in _hung then output "You are at an underground dock, next to a large underground " "sea. A dark hole leads upwards in the nearby wall. Far over" "head, the cavern roof can be dimly seen. Floating nearby to " "the south is a yellow submarine, with useless " "engines.%n"; else output "You are on an " "underground dock. Floating nearby to the south is " "a yellow submarine, in a huge underground sea. Far overhead, " " the cavern roof can be dimly seen.%n"; fi; corp; /* Predeclaration of motion verbs */ thing north: ; thing south: ; thing east: ; thing west: ; thing up: ; thing down: ; thing climb: ; thing enter: ; thing flush: ; thing jump: ; thing northeast: ; thing southeast: ; thing fly: ; thing southwest: ; thing northwest: ; thing swim: ; thing dive: ; thing surface: ; thing float: ; thing backward: ; thing forward: ; /* The descriptions, etc, of locations */ thing quicksand: east _quicksand, west _quicksand, north _quicksand, south _quicksand, fly _quicksand, jump _quicksand, northeast _quicksand, northwest _quicksand, southeast _quicksand, southwest _quicksand, climb _quicksand, up _quicksand, down _quicksand, _contents (), _name "in some quicksand", _description _quicksanddescrip; thing pillar: _contents (flamethrower, lantern), jump pillarbase, east _glasswalkwest, south _glasswalk, _name "at the pillar", _description ". A slender iron column, with glass walkways leading " "south and east. There does not appear to be any easy way " "down. You may have to jump.%n"; thing pillarbase: jump pillar, _contents (), down _tounderpillar, _name "at the base of the pillar", _description ", which rises above you. There is dense jungle " "on all sides. At your feet, there is a small hole leading " "down into darkness.%n"; thing underpillar: _name "at the pillar foundation", _contents (rock), up _fromunderpillar, climb _fromunderpillar, east _totunnelunderpillar, _description _underpillar_desc; thing roomnorth: south roomsouth, east boudoir, _contents (), _name "at the north end of The Room", _description ". A magnificent room, with rows of marble columns along the " "sides of the room. Fantastically beautiful frescoes adorn " "the ceiling, and tapestries line the walls. An arched " "doorway leads east.%n"; thing wc: flush pillar, east roomsouth, _contents (), _name "in the washroom", _description ". A very elaborate washroom, " "with all sorts of conveniences. There is a toilet here.%n"; thing roomy: west roomsouth, down pits, _contents (), _name "in a small room", _description ". A small, barren room off The Room.%n"; thing tunnel: west _tounderpillartunnel, north _greathall, down pits, _contents (bag), _name "in the tunnel", _description ". A low, filthy dirt tunnel. Holes lead out to the" " north and west.%n"; thing greathall: _contents (painting), _name "in the great hall", south _block, north roomsouth, up pits, down pits, _description ". A beautiful, high hall, with paintings along the walls.%n"; thing roomsouth: _contents (), _name "at the south end of The Room", south greathall, north roomnorth, west wc, east roomy, _description ". A magnificent high-ceilinged room, with rows of " "fluted marble columns along the east and west walls. Beautiful " "frescoes adorn the ceiling, and brilliantly colored tapestries " "cover the north and south walls. Arched doorways lead off to " "the east and west.%n"; thing boudoir: west roomnorth, down _trapdoor, _contents (), _name "in the boudoir", _description ", a lavishly decorated bedroom. There is a wall " "bed here, of the type that pulls down out of the wall, and " "lying on the bed is a sexy whore, with an ugly face.%n"; thing graniteroom: up _bedlifted, south balcony, _contents (wrench), _name "in the granite room", _description ", a small room, carved out of the granite bedrock.%n"; thing balcony: north graniteroom, up pits, _contents (), _name "on the balcony", _description ". A steep stairway " "leads down to the lake far below. Far below " "you, and to the west, a dark hole can be seen in the cliff " "above the west end of the lake. There is a path leading " "south from it. However, the stairs down is blocked with " "a large plate-glass window.%n"; thing stairone: up balcony, east _falloff, west _falloff, south _falloff, down stairtwo, _contents (), _name "on the stairway", _description ", a long, steep stairway.%n"; thing stairtwo: up stairone, east _falloff, west _falloff, south _falloff, down dock, _contents (), _name "on the stairway", _description ", a long, steep stairway.%n"; thing dock: up stairtwo, down pits, east boat, _water true, swim _drown, _contents (), _name "at the dock", west _drown, dive _drown, south _drown, _description ". To the east is a boat with the mooring line " "coming over to the dock, where is is securely bolted to the " "cliff.%n"; thing boat: west dock, east _drown, south _drown, _water true, _contents (), _name "in a rowboat", _description ", floating near the dock. The mooring line extends over " "to the dock, where it is securely bolted to the cliff.%n"; thing shore: west _drown, down pits, east crossroads, swim _drown, dive _drown, _contents (), _water true, _name "at the east end of the lake", _description ". The shore here is mainly composed of sand.%n"; thing crossroads: west shore, down pits, southwest lakepathtwo, north fone, east padone, _contents (), _name "at the crossroads", south lavapathone, _description ". Many paths lead out in all directions. To the east there " "is a large concrete pad. To the north, a large forest. " "Scratched in the sand by the side of the road: 'nenene'.%n"; thing padone: west crossroads, _contents (), _name "on a concrete pad", east padtwo, _description ". A very large, sturdy concrete pad, set in the " "middle of a forest. The pad continues on to the east, while " "to the west lie the crossroads.%n"; thing padtwo: west padone, east padthree, _contents (), _name "on a concrete pad", _description ". A large, very sturdy " "concrete pad, set in the middle of a forest. It is seen " "to go on to the east and west.%n"; thing padthree: west padtwo, _contents (), _name "on a concrete pad", _description _padthree_desc; thing lakepathtwo: west lakepathone, northeast crossroads, swim _drown, dive _drown, north _drown, _contents (), _water true, _name "on the path by the lake", _description ". A narrow path, carved out of rock. The lake is a few " "feet below you. The path continues to the west and " "northeast.%n"; thing lakepathone: _name "on the path by the lake", dive _drown, north holeinwall, east lakepathtwo, _contents (), swim _drown, _water true, _description ". A narrow path carved out of the rock. " "The lake is a few feet below you. " "The path continues to the east and north.%n"; thing holeinwall: _contents (shovel), _name "in the hole in the wall", south lakepathone, _description ". A dark little cave, carved out of the rock. Chiseled " "on the wall: 'I like to hallucinate.'%n"; thing treebase: west ffive, east treeinterior, enter treeinterior, up flosttwo, down pits, _contents (), north flosttwo, south flosttwo, northeast flosttwo, northwest flosttwo, southeast flosttwo, southwest flosttwo, _name "at the base of a huge tree", _description ". You are just west of the base. The tree goes up as far " "as you can see, and is so great in circumference that eighty " "men could not encircle it with their linked arms. It " "appears to be hollow.%n"; thing treeinterior: up branch, climb branch, down pits, west treebase, _contents (), _name "inside the big, hollow tree", _description "You are at the bottom. It is rather dim, but you can see " "rungs hammered onto the inside of the tree, extending " "upwards as high as you can see. A spot of light is " "visible up there.%n"; thing ledge: down _falloff, _contents (), east branch, _name "on a narrow cliff ledge", _description ", about 2 metres wide, and 20 metres long. A dark little " "cave is in the side of the cliff, but it is blocked by a " "15 metre long rat, with long, sharp teeth.%n"; thing branch: west ledge, down treeinterior, up flostone, _contents (), _name "on the tree branch", _description ". A long, thick branch, reaching west to a ledge on " "a nearby cliff.%n"; thing entrance: east ledge, north passageone, south passagethree, west passagetwo, down pits, _contents (), _name "in the entrance hall", _description " to a large building of some sort. There are short passages " "with doors at their ends to the north, south, and west. " "Daylight can be seen to the east.%n"; thing passageone: /* north hallone, */ south entrance, _contents (), _name "in a short passageway", _description ". It is dimly lit, with a single bare 40 watt light " "bulb hanging from the ceiling. The way north is blocked " "by a wooden door.%n"; thing passagetwo: /* west halltwo, */ east entrance, _contents (), _name "in a short passage-way", _description ". It is dimly lit, with a single bare 60 watt bulb " "suspended from the ceiling. There is a metal door to " "the west.%n"; thing passagethree: north entrance, /* south hallthree, */ _contents (), _name "in a short passage-way", _description " that is dimly lit, with a single bare 75 watt " "light bulb hanging from the ceiling. There is a fabric " "door to the south.%n"; thing hallone: north _artistic, south passageone, _contents (), _name "in a little hallway", _description " lit with dusty light bulbs. The walls are covered with " "tacky wallpaper. There is a very musty smell in the air. " "There are little hooks on the walls. Nearby, there is a " "French artist whining (this is known as a french whine) " "'My walls, they are zo ugly! Oh, whatever can I do?%n"; thing halltwo: west skullroom, east passagetwo, _contents (), _name "in a very long hallway", _description " with a very high, arched roof. It is lit with thousands " "of tallow candles. Throughout the hall runs a beautiful " "carpet. An arched doorway leads east, and there is a " "charred doorframe to the east.%n"; thing skullroom: _contents (skull), east halltwo, down pits, _name "in the skull room", _description ". It is a long, wide room,%nlined with shelves. " "On the shelves are thousands and%nthousands of human skulls, " "with living eyeballs in the sockets. The eyeballs all stare%n" " at you, and watch as you move about.%n"; thing hallpastone: south hallone, north _mist, west _doorhallpast, east _doorhallpast, _contents (), _name "in a hallway", _description " lit with ultra-modern fluorescent light fixtures. " "Doors lead off to the sides. To the north, there is a " "doorway through which shifting mists can be seen. On " "the ceiling, there is a very large, plate glass mirror.%n"; thing atticone: down hallpastone, northeast attictwo, _contents (), _name "in a secret passageway", _description " that looks as though it has not been used in thousands " "of years. Dust lies a handsbreadth's thickness on the " "floor. It is dimly lit by light coming in through cracks " "in the walls. It goes on to northeast. There is a hole in " "the floor here.%n"; thing attictwo: southwest atticone, north _construction, _contents (), _name "in a secret passageway", _description " with much dust on the floor. There is a slight " "jog in the passage here. On the wall is the word: " "'lysergicaciddiethylamide'.%n"; thing hallthree: north passagethree, south roundhallone, _contents (), _name "in a cylindrical tunnel", _description ", perfectly round and very long. It is lit " "with a glowing strip set into the side of the tunnel. " "It extends to the north and south. The walls are steel.%n"; thing roundhallone: north hallthree, south roundhalltwo, _contents (), _name "in a cylindrical tunnel", _description ", very long, steel-walled, and heading north-south. " "It is lit with a glowing plastic strip set into the " "side of the tunnel.%n"; thing roundhalltwo: north roundhallone, south roundhallthree, _contents (), _name "in a cylindrical tunnel", _description ", a very long north-south steel-walled tunnel. It is " "lit with a glowing plastic strip set into the side.%n"; thing roundhallthree: north roundhalltwo, south roundhallfour, _contents (), _name "in a cylindrical tunnel", _description ", a very long north-south steel-walled tunnel. It is " "lit with a glowing plastic strip set into the side.%n"; thing roundhallfour: _name "in a cylindrical tunnel", north roundhallthree, _contents (), _description ", a very long, steel-walled tunnel, heading " "off to the north. It does not appear to continue south. " "It is lit with a glowing plastic strip set into the tunnel " "wall. Along the west wall, in a row: a green lever, a blue " "lever, a red lever, and a black lever.%n"; thing roundhallfive: down pits, east roundhallfour, _contents (), northwest roundhallsix, _name "in a cylindrical tunnel", _description _roundhallfive_desc; thing roundhallsix: down pits, northwest roundhallseven, southeast roundhallfive, _contents (), _name "in a cylindrical tunnel", _description ", a very long northwest-southeast tunnel, with a steep side " "passage leading down. The walls are made of steel. Light " "comes from a glowing plastic strip set into the side " "of the tunnel.%n"; thing roundhallseven: down roundhalleight, northwest pits, up pits, southeast roundhallsix, _contents (), _name "in a cyindrical tunnel", _description ", a very long north" "west-southeast tunnel. The walls are made of steel. There " "are steep side passages leading up and down. Light comes from" " a glowing plastic strip set into the tunnel wall.%n"; thing roundhalleight: up roundhallseven, north roundhallnine, down pits, _contents (), _name "in a cylindrical tunnel", _description ", a very long steel-walled north-south tunnel. " "Steep side passages lead up and down. Light comes from a " "glowing plastic strip set into the tunnel wall.%n"; thing roundhallnine: _name "in a cylindrical tunnel", north pits, south roundhalleight, east pits, west pits, up pits, down pits, northwest pits, southwest pits, southeast pits, northeast roundhallten, _contents (), _description " leading off to the south. It branches here in all " "directions. The walls are made of steel. Light comes from " "a glowing plastic strip set into the tunnel wall.%n"; thing roundhallten: southwest roundhallnine, up trapdoor, _contents (), _name "in a cylindrical tunnel", _description ", made of steel. Light comes from a glowing plastic " "strip set into the tunnel wall, and also from a hole in " "the ceiling.%n"; thing trapdoor: down roundhallten, /* up hwy1, */ _contents (), _name "in a manhole", _description ". Brilliant sunlight " "shines down around you. The manhole comes up in the middle of " "a major highway, covered with thousand of cars, rushing by. " "You can see the countryside for miles in all directions.%n"; thing highwayone: down trapdoor, east highwaytwo, west quicksand, south quicksand, north quicksand, _contents (), _name "on the highway", _description ". Long and deserted, it runs " "east-west. It is set in the middle of some nice-looking " "countryside, save for some swamp to the north, south " "and west. An open manhole is nearby.%n"; thing highwaytwo: east highwaythree, west highwayone, _contents (), _name "on the highway", _description ". It is long, deserted, " "runs east-west, and is set in the middle " "of some beautiful countryside.%n"; thing highwaythree: east highwayfour, west highwaytwo, _contents (), _name "on the highway", _description ". It is long, deserted, " "runs east-west, and is set in the middle " "of some beautiful countryside.%n"; thing highwayfour: east highwayfive, west highwaythree, _contents (), south countryroadtwo, north countryroadone, _name "on the highway", _description ". It is long, deserted runs " "east-west, and is set in the middle of some very " "nice-looking countryside. A country road intersects the " "highway here.%n"; thing highwayfive: west highwayfour, east _construction, _contents (), _name "on the highway", _description " It is a long, deserted east-west strip of pavement, and is " "set in the middle of some nice-looking countryside.%n"; thing countryroadone: north _construction, south highwayfour, _contents (), _name "on a country road", _description ". It is a rough north-south gravel road.%n"; thing countryroadtwo: north highwayfour, south countryroadthree, _contents (), _name "on a country road", _description "It is a rough north-south gravel road.%n"; thing countryroadthree: north countryroadtwo, south countryroadfour, _contents (), _name "on a country road", _description ". It is a rough north-south gravel road.%n"; thing countryroadfour: north countryroadthree, east farmyard, south countryroadfive, _contents (), _name "on a country road", _description ". It is a north-south gravel road. There is " "a farm to the east.%n"; thing countryroadfive: north countryroadfour, south quicksand, _contents (), _name "on a country road", _description ". It is a north-south gravel road, with a swamp to the south.%n"; thing farmyard: east barnone, west countryroadfour, northeast orchard1, southeast houseporch, _contents (), _name "in the farmyard", _description ", near a barn to the east. Paths lead off in some directions," " and a road leads west. A farmhouse is to the southeast.%n"; thing orchard1: southwest farmyard, _contents (), _name "in the orchard", _description ", with the trees heavy with " "ripe fruit. Unfortunately, the orchard is guarded by a " "vicious dog.%n"; thing orchard2: south orchard1, _contents (fruit), _name "in the orchard", _description ", with the trees heavy with ripe fruit.%n"; thing houseporch: northwest farmyard, south fronthall, _contents (), _name "on the front porch of the farmhouse", _description ". There is a door to the south.%n"; thing fronthall: north houseporch, south backhall, _contents (), east coatroom, west kitchen, down cellar, _name "in the front hall", _description ". Doors lead off to all the compass points, and steps lead " "down nearby.%n"; thing kitchen: east fronthall, _contents (pot), _name "in the kitchen", _description _kitchen_desc; thing backhall: north fronthall, down farmpit, _contents (), south farmpit, _name "in the backhall of the farmhouse", _description ". It opens out to the backyard. There is a large pit " "below you.%n"; thing farmpit: up backhall, _contents (crowbar), _name "in an earth-walled pit", _description " being dug in the ground for some purpose.%n"; thing cellar: up fronthall, west _furnacegone, _contents (), _name "in the cellar", _description ". There is a hot gas-fired furnace to the west.%n"; thing coatroom: west fronthall, _contents (shoes), _name "in the coat room", _description ". There are hooks on the walls, but not much else.%n"; thing barnone: east barntwo, west farmyard, _contents (), _name "in the barn", _description ", a long, dirt-floored barn, east-west oriented, which is " "fairly well lit by skylights in the roof far above.%n"; thing barntwo: south pigstyone, east barnthree, west barnone, _contents (), _name "in the barn", _description ", a long, dirt floored barn, fairly well lit by skylights " "high above. A foul smell comes from the south.%n"; thing barnthree: up hayloftone, west barntwo, _contents (), _name "in the barn", _description ", a long, dirt-floored barn, well lit by skylights. A " "ladder leads up.%n"; thing pigstyone: south pigstytwo, _contents (), north barntwo, _name "in the pigsty", _description ", ankle deep in a foul greenish muck. Your feet tend " "to stick. The sty continues to the south.%n"; thing pigstytwo: north pigstyone, _contents (blob), _name "in the pigsty", _description ", ankle deep in a thick layer of foul, greenish muck.%n"; thing hayloftone: down barnthree, south haylofttwo, east hayloftthree, northeast hayloftfour, _contents (), _name "in the hayloft", _description ", with fresh hay bales spread about.%n"; thing haylofttwo: north hayloftone, south _haylofthay, up _haylofthay, east _haylofthay, northeast _haylofthay, northwest _haylofthay, west _haylofthay, southeast _haylofthay, southwest _haylofthay, _contents (), _name "in the hayloft", _description ", with hay bales tightly packed around you.%n"; thing hayloftthree: west hayloftone, southwest _haylofthay, south _haylofthay, east _haylofthay, northeast _haylofthay, northwest _haylofthay, southeast _haylofthay, north _haylofthay, _contents (), _name "in the hayloft", _description "with bales of hay tightly packed in all around you.%n"; thing hayloftfour: southwest hayloftone, southeast _haylofthay, northeast _haylofthay, north _haylofthay, south _haylofthay, east _haylofthay, west _haylofthay, up roofone, climb roofone, _contents (), _name "in the hayloft", _description ", packed with hay bales. Along one side, enough bales have " "removed to form a terraced structure up to the roof.%n"; thing roofone: northeast _falloff, southeast _falloff, _contents (), down hayloftfour, west rooftwo, east _falloff, north _falloff, south _falloff, southwest _falloff, _name "on the roof of the barn", _description ", which extends west. There is a hole in the roof nearby.%n"; thing rooftwo: west roofthree, east roofone, north _falloff, south _falloff, northeast _falloff, southeast _falloff, southwest _falloff, northwest _falloff, _contents (), _name "on the roof of the barn", _description ", extending east and west. The ground can be seen below.%n"; thing roofthree: east rooftwo, jump _jumptopond, north _falloff, south _falloff, west _falloff, northeast _falloff, southeast _falloff, northwest _falloff, southwest _falloff, _contents (), _name "on the roof of the barn", _description ", extending east. Far below, a large pond can be seen.%n"; thing pondshore: west pondsurfaceone, climb roofthree, swim pondsurfaceone, _water true, _contents (), _name "on the shore of the pond", _description ", just east of the pond. The barn is right next to you, " "and it is covered in ivy.%n"; thing pondsurfaceone: east pondshore, dive underpondone, _water true, _torch true, swim pondsurfacefour, _contents (), _name "at the surface of the pond", _description ", with water all around you, except " "for the shore to the east.%n"; thing pondsurfacetwo: _name "at the surface of the pond", swim pondsurfaceone, _water true, _torch true, dive underpondtwo, _contents (), _description ", surrounded with water.%n"; thing pondsurfacethree: swim pondsurfacetwo, dive underpondthree, _water true, _torch true, _contents (), _name "at the surface of the pond", _description ", surrounded by water.%n"; thing pondsurfacefour: swim pondsurfacethree, dive underpondfour, _water true, _torch true, _contents (), _name "the surface of the pond", _description ", surrounded by water.%n"; thing underpondone: up pondsurfaceone, surface pondsurfaceone, _water true, _torch true, swim underpondtwo, _contents (), _name "swimming about the bottom of the pond", _description " in the warm water. It is very relaxing.%n"; thing underpondtwo: up pondsurfacetwo, surface pondsurfacetwo, _water true, _torch true, swim underpondthree, _contents (), _name "swimming about the bottom of the pond", _description " in the warm water. It is very relaxing.%n"; thing underpondthree: up pondsurfacethree, surface pondsurfacethree, _water true, _torch true, swim underpondfour, south _octopussysgarden, _contents (), _name "swimming about the bottom of the pond", _description "in the warm water. It is very relaxing. To the south, " "there is an octopusses' garden in the shade.%n"; thing underpondfour: up pondsurfacefour, surface pondsurfacefour, _water true, _torch true, swim underpondfive, _contents (), _name "swimming about the bottom of the pond", _description " in the warm water. It is very relaxing.%n"; thing underpondfive: up cavernone, float pondsurfaceone, _water true, _torch true, surface cavernone, _contents (), _name "swimming about the bottom of the pond", _description " in the warm water. It is very relaxing.%n"; thing cavernone: _contents (), _name "in the limestone cavern", dive underpondfive, south caverntwo, north _drown, _water true, fly rockyhilltop, _description ". The walls are made of water-carved limestone. The roof " "is very high above you, with holes in it, no doubt caused " "by erosion. The cavern continues to the south. There " "are some feathers on the ground here.%n"; thing caverntwo: north cavernone, south cavernthree, _contents (), _name "in the limestone cavern", _description ". The walls are made of water carved limestone. The cavern " "extends north and south.%n"; thing cavernthree: north caverntwo, south cavernfour, _contents (), _name "in the limestone cavern", _description ". The walls are made of water carved limestone. The cavern " "extends north and south.%n"; thing cavernfour: north cavernthree, down _tounderdockside, east cavernlost, south cavernlost, northeast cavernlost, west cavernlost, northwest cavernlost, southwest cavernlost, southeast cavernlost, _contents (), _name "in the limestone cavern", _description ". The walls are made of water carved limestone. There is a " "multitude of side passages here.%n"; thing cavernlost: north cavernlost, south cavernlost, east cavernlost, west cavernlost, northeast cavernlost, northwest cavernlost, southeast cavernlost, southwest cavernlost, _contents (), _name "in the limestone caverns", _description ", with a multitude of side passages leading off.%n"; thing rockyhilltop: fly cavernone, south rockypathone, _contents (), _name "on the rocky hilltop", _description ". A farm can be seen in the distance, next to a large pond. " "There is a rocky little path heading south. At your feet is " "a large hole.%n"; thing rockypathone: north rockyhilltop, east rockypathone, south rockypathtwo, west rockypathone, _contents (), _name "on the rocky path", _description ". A winding, twisting" " path covered with rocks. The best used path runs south.%n"; thing rockypathtwo: north rockypathone, west rockypathtwo, southeast rockypathfour, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypaththree: northeast rockypathfifteen, southeast rockypathsix, west rockypathtwo, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypathfour: northwest rockypathtwo, south rockypathfour, west rockypathfour, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypathfive: north rockypathseven, east rockypatheight, southwest rockypaththree, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypathsix: northwest rockypaththree, south rockypathsix, east rockypathsix, west rockypathsix, _contents (), _name "on the rocky path", _description ". A winding, twisting " "path covered with rocks.%n"; thing rockypathseven: south rockypathfive, northeast rockypathten, southeast rockypathnine, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypatheight: west rockypathfive, _contents (), _name "on the rocky path", _description ". A winding, twisting, " "path, covered with rocks.%n"; thing rockypathnine: northwest rockypathseven, _contents (), _name "on the rocky path", _description ". A winding, twisting, " "path, covered with rocks.%n"; thing rockypathten: southwest rockypathseven, east _falloff, _contents (), _name "on the rocky path", _description ". There is a chasm is to the east." " This would be a great place for a bridge!%n"; thing rockypatheleven: west rockypathten, northeast rockypathtwelve, southeast rockypaththirteen, _contents (), _name "on the rocky path", _description ". There is a bridge to the west, spanning a chasm.%n"; thing rockypathtwelve: north rockypathfourteen, southeast rockypaththirteen, east rockypathfifteen, _contents (), _name "on the rocky path", _description ". A winding, twisting, path covered with rocks.%n"; thing rockypaththirteen: northwest rockypatheleven, _contents (), _name "on the rocky path", _description ". A winding, twisting, path covered with rocks.%n"; thing rockypathfourteen: northeast rockypathseventeen, southeast rockypathsixteen, south rockypathtwelve, _contents (), _name "on the rocky path", _description "A winding, twisting path covered with rocks.%n"; thing rockypathfifteen: west rockypathtwelve, north rockypathfifteen, south rockypathfifteen, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypathsixteen: northwest rockypathfourteen, south rockypathsixteen, _contents (), _name "on the rocky path", _description ". A winding, twisting path covered with rocks.%n"; thing rockypathseventeen: northwest cairn, southwest rockypathfourteen, north rockypathseventeen, west rockypathseventeen, east rockypathseventeen, _contents (), _name "on the rocky path", _description "A winding, twisting, path covered with rocks.%n"; thing cairn: down _toundercairnone, southeast rockypathseventeen, _contents (hole), _name "at the cairn", _description _cairn_desc; thing undercairnone: up cairn, north undercairntwo, northwest undercairnthree, southwest undercairnfour, _contents (), _name "in the mountain's inner reaches, beneath the cairn", _description ". A mess of secret little passages cut" " out of the mountain.%n"; thing undercairntwo: north undercairntwo, south undercairnone, east undercairntwo, west undercairntwo, northeast undercairntwo, northwest undercairntwo, southwest undercairntwo, _contents (), southeast undercairntwo, _name "in the mountain's inner reaches, beneath the cairn", _description ". A mess of secret little " "passages cut out of the mountain.%n"; thing undercairnthree: southeast undercairnone, _contents (keys), north undercairnfour, south undercairnfour, west undercairnfour, east undercairnfour, southwest undercairntwo, northwest undercairntwo, northeast undercairntwo, _name "in the mountain's inner reaches, beneath the cairn", _description "A mess of secret little passages cut out of the " "mountain.%n"; thing undercairnfour: north undercairnfour, south undercairnfour, northeast undercairnone, northwest undercairnfour, southeast undercairnfour, southwest undercairnfour, _contents (), east undercairnfour, west undercairnfour, _name "in the mountain's inner reaches, beneath the cairn", _description "A mess of secret little passages, cut out of the mountain.%n"; thing underdock: up cavernfour, _contents (), south _subonethere, _water true, _name "at an underground dock", _description _hungyesno; thing otherdock: north _subtwothere, south docksidethree, _water true, _contents (), _name "at an underground dock", _description _oldpot; thing sub1: north underdock, _contents (), _name "aboard the yellow submarine", _water true, _description ". A fairly compact " "little vessel, although it seems a bit old.%n"; thing sub2: south otherdock, _contents (), _name "aboard the yellow submarine. ", _water true, _description ". A fairly compact " "little vessel, although it seems a bit old.%n"; thing docksidefive: east docksidefour, _contents (), north _drown, _water true, _name "at the dockside", _description " by the side of " "an underground sea. The wharf continues east.%n"; thing docksidefour: east docksidethree, west docksidefive, _water true, _contents (), north _drown, _name "at the dockside", _description " by the side of an underground sea. The wharf continues " "east and west.%n"; thing docksidethree: east docksidetwo, west docksidefour, _water true, north otherdock, _contents (), _name "at the dockside", _description " by the side of an underground sea. The wharf " "continues east and west. There is a dock to the north.%n"; thing docksidetwo: east docksideone, west docksidethree, _water true, north _drown, _contents (), _name "at the dockside", _description " by the side of an underground sea. The dockside continues " "east and west.%n"; thing docksideone: west docksidetwo, south warehouse, north _drown, _water true, _contents (), _name "at the dockside", _description " by the side of an underground sea. There is a warehouse " "to the south. The dock continues west%n"; thing warehouse: north docksideone, _contents (), _name "in the warehouse", _description " by the docks. There is a locked safedoor here.%n"; thing complexstart: south corridorone, _contents (), climb warehouse, up warehouse, _name "in the underground complex", _description ". You are in a " "very clean, very brilliantly lit white corridor, just beneath " "a large shaft. There is a ladder just by you, leading up. " "The corridor leads south.%n"; thing corridorone: north complexstart, south corridortwo, _contents (), _name "in the underground complex", _description ". You are in a very clean, very brilliantly lit white " "corridor. It heads north and south.%n"; thing corridortwo: north corridorone, east corridorthree, west corridorseven, south corridorsix, _contents (), _name "in the underground complex", _description ". You are at a junction in the corridors.%n"; thing corridorthree: west corridortwo, east corridorfour, _contents (), _name "in the underground complex", _description "You are in a very clean, very brilliantly lit " "white corridor, which goes east and west.%n"; thing corridorfour: west corridorthree, east corridorfive, south office, _contents (), _name "in the underground complex", _description "You are in a very clean, very brilliantly " "lit white corridor, heading east and west. " "There is a doorway to the south.%n"; thing corridorfive: west corridorfour, /* north labone, */ _contents (), _name "in the underground complex", _description ". The hallway ends here. One of the wall panels to the " "north is visibly more worn than the others.%n"; thing corridorsix: north corridortwo, south corridoreight, _contents (), _name "in the underground complex", _description ". You are in a very clean, very brilliantly lit white " "corridor, heading north and south.%n"; thing corridorseven: /* west weaponsrepository, */ east corridortwo, _contents (), _name "in the underground complex", _description ", in the corridors. There is a massive, tightly closed vault " "door to the west.%n"; thing corridoreight: north corridorsix, _contents (), _name "in the underground complex", _description ". You are in the corridors. The corridor ends here, " "except for a closed door to the east.%n"; thing office: east _killedguard, north corridorfour, _contents (), _name "in an office", _description ", which looks like the office of one of the top men in the " "complex. There is a walk-in safe to the east, guarded by " "a massive guard. He demands to see some identification.%n"; thing walkinsafe: west office, _contents (booklet, gadget), _name "in the walk-in safe", _description _walkinsafe_desc; thing labone: south corridorfive, north labtwo, east labfour, west labthree, _contents (), _name "in the laboratory", _description ". There are rows and rows of all sorts of " "equipment, of all sorts, on many work benches here. The " "lights are only on in places, so it is fairly dim. Aisles " "between the benches lead north, south, east, and west.%n"; thing labtwo: south labone, east labfive, _contents (), _name "in the laboratory", _description ". There are rows and rows of equipment covered benches " "lining the floor. Aisles lead south and east.%n"; thing labthree: west labone, _contents (), _name "in the laboratory", _description ". Rows and rows of equipment covered benches " "fill the room. Aisles between the benches lead west.%n"; thing labfour: east labone, _contents (), _name "in the laboratory", _description ". Rows and rows of equipment covered benches " "fill the room. An aisle between the benches lead east.%n"; thing labfive: west labtwo, _contents (paper), _name "in the laboratory", _description ". Rows and rows of equipment-covered benches fill the " "room. Aisles between the benches lead west.%n"; thing powerroomone: west corridoreight, south powerroomtwo, _name "in the power room", east powerroomfour, _contents (), _description " that generates power for the entire complex. " "Large tubines and other machinery covers the floor in a grid " "pattern. They tower above you. A huge pipe on the ceiling " "heads east and west.%n"; thing powerroomtwo: north powerroomone, east powerroomthree, _contents (), _name "in the power room", _description " that generates power for the entire complex. " "Machinery covers the floor in a grid pattern. A large " "electrical conduit pipe rises up on the wall next to you.%n"; thing powerroomthree: north powerroomfour, east powerroomfive, west powerroomtwo, _contents (), _name "in the power room", _description " that generates power for the entire complex. " "Huge pieces of machinery cover the floor in a grid pattern.%n"; thing powerroomfour: west powerroomone, south powerroomthree, _contents (), _name "in the power room", _description " that generates power for the entire complex. Large machines " "cover the floor in a grid pattern. A very large overhead " "pipe heads north and south.%n"; thing powerroomfive: west powerroomtwo, east powerroomsix, _contents (), _name "in the power room", _description " that generates power for the entire complex. Machinery " "covers the floor in a grid pattern. High in the wall above, " "a metal grid is set.%n"; thing powerroomsix: west powerroomfive, _contents (badge), _name "in the power room", _description "that generates power for the entire complex. There is a low " "table here.%n"; thing octocave: north octopussesgardenintheshade, _water true, _torch true, south oct1, _contents (), _name "in the octopusses' cave", _description ". A nice, very pleasant little cave, with all" " the conveniences you could need. There is a crack in the" " south wall, just above the water level.%n"; thing oct1: north octocave, south oct2, east oct3, west oct3, northeast oct1, southeast oct1, northwest oct1, southwest oct1, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct2: north oct1, northwest oct3, south oct4, east oct11, southwest oct5, west oct11, northeast oct2, southeast oct2, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct3: southeast oct2, north oct1, west oct1, south oct1, east oct3, northeast oct3, southwest oct3, northwest oct3, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct4: north oct2, south oct11, east oct11, west oct11, northeast oct4, northwest oct4, southeast oct4, _contents (), southwest oct4, _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct5: northeast oct2, northwest oct11, southwest oct6, north oct2, south oct2, east oct2, west oct5, southeast oct5, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct6: northeast oct5, south oct7, east oct4, west oct4, north oct4, southeast oct6, southwest oct6, northwest oct6, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct7: north oct6, northeast oct8, southeast oct10, east oct5, west oct5, south oct5, northwest oct7, southwest oct7, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct8: southwest oct7, north oct6, south oct6, east oct6, west oct6, southeast oct8, northeast oct8, northwest oct8, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct9: northeast oct10, southeast oct13, north oct8, south oct8, east oct8, west oct8, northwest oct9, southwest oct9, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct10: northwest oct7, southwest oct9, east oct12, southeast oct10, northeast oct10, north oct5, south oct5, west oct5, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct11: southeast oct5, north oct1, south oct1, west oct1, east oct1, southwest oct11, northeast oct11, northwest oct11, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct12: west oct10, south oct12, east oct12, north oct12, southeast oct2, northeast oct2, southwest oct2, northwest oct2, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct13: northwest oct9, northeast oct14, southeast oct13, southwest oct13, east oct3, west oct3, north oct3, south oct3, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct14: southwest oct13, northwest oct15, southeast oct16, northeast oct14, south oct4, north oct4, east oct4, west oct4, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct15: southeast oct14, northeast oct15, northwest oct15, south oct11, north oct11, east oct11, west oct11, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct16: east oct17, northwest oct14, southwest oct18, northeast oct16, southeast oct16, west oct6, north oct6, south oct6, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing oct17: /* south weaponsrepository, */ west oct16, east oct12, north oct12, southeast oct5, southwest oct5, northwest oct5, northeast oct5, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels. " "There is a locked hatch door to the south, with a combination" "lock on it.%n"; thing oct18: northeast oct16, southeast oct15, southwest oct15, northwest oct15, south oct3, north oct3, east oct3, west oct3, _contents (), _name "in the octopusses' tunnels", _description ", an incredible mess of little tunnels.%n"; thing weaponsrepository: north _bombtooct17, east _teleport, _contents (bomb), _name "in the weapons repository", _description ". A huge room, packed to the ceiling with most" " of the modern destructive devices known to man. There is" " enough firepower here to vaporize this little planet, and" " quite possibly destroy the solar systym. There is a little" " hatchway to the north, and a vaultdoor to the east.%n"; thing octopussesgardenintheshade: south octocave, _water true, north underpondthree, _contents (), _torch true, _name "in the octopusses' garden", _description " in the shade. It is a pleasantly shaded place, with " "beautiful coral gardens surrounding the place. The octopus " "watches benevolently. His cave is to the south.%n"; thing glasswalkone: _name "on the glass walkway", north pillar, south glasswalktwo, east _falloff, west _falloff, northeast _falloff, northwest _falloff, southeast _falloff, southwest _falloff, down _falloff, _contents (), _description ". A long, slender walkway without handrails, extending " "to the north and south. You can see " "the jungle rain forest far below.%n"; thing glasswalktwo: north glasswalkone, southeast glasswalkthree, west _falloff, east _falloff, southwest glasswalkfour, south _falloff, down _falloff, northwest _falloff, northeast _falloff, up _falloff, _contents (), _name "on the glass walkway. ", _description ". A long, slender walkway without handrails, with branches to the " "north, southeast, and southwest. You can see the jungle " "rain forest far below.%n"; thing glasswalkthree: southeast _mist, northwest glasswalktwo, east _falloff, west _falloff, north _falloff, south _falloff, northeast _falloff, southwest _falloff, up _falloff, down _falloff, _contents (), _name "on the glass walkway", _description ". A long slender northwest-southeast walkway " "without handrails. To the southeast, the walkway is " "shrouded in mist. You can see the jungle far below.%n"; thing glasswalkfour: southwest glasswalkfive, east _falloff, northeast glasswalktwo, west _falloff, north _falloff, south _falloff, northwest _falloff, southeast _falloff, down _falloff, _contents (), _name "on the glass walkway", _description ". A long " "slender northeast-southwest walkway without handrails. " "You can see the jungle rain forest far below.%n"; thing glasswalkfive: northeast glasswalkfour, northwest _falloff, north _falloff, south _falloff, west _falloff, east _falloff, down _falloff, southwest glasswalknine, southeast glasswalksix, _contents (), _name "on the glass walkway", _description ". A long, slender northeast-southwest glass " "walkway with a branch to the southeast. There are no " "handrails. You can see the jungle rain forest far below.%n"; thing glasswalksix: northwest glasswalkfive, southeast glasswalkeight, northeast _falloff, north _falloff, south _falloff, east _falloff, west _falloff, down _falloff, _name "on the glass walkway", southwest glasswalkseven, _contents (), _description ". A long, slender " "northwest-southeast walkway with a branch to the southwest. " "You can see the jungle rain forest far below.%n"; thing glasswalkseven: northeast glasswalksix, southeast _falloff, southwest glasswalkseven, northwest _falloff, north _falloff, east _falloff, west _falloff, south _falloff, down _falloff, _contents (), _name "on the glass walkway", _description ". A long, slender northeast-southwest walkway without " "handrails. You can see the jungle rain forest far below.%n"; thing glasswalkeight: northwest glasswalksix, northeast _falloff, southeast _falloff, southwest _falloff, north _falloff, east _falloff, south _falloff, west _falloff, down _falloff, _contents (figure), _name "on the glass walkway", _description ". The end of of a northwest-southeast walkway. " "The walkway leads northwest. You can see the jungle rain " "forest far below.%n"; thing glasswalknine: northeast glasswalkfive, southeast _falloff, southwest glasswalkten, northwest _falloff, north _falloff, south _falloff, east _falloff, west _falloff, down _falloff, _contents (), _name "on the glass walkway", _description ". A long, slender, northeast-southwest walkway without " "handrails. You can see the jungle rain forest far below.%n"; thing glasswalkten: northeast glasswalknine, southeast _falloff, northwest _falloff, southwest _falloff, north _falloff, south templeplatform, west _falloff, down _falloff, east _falloff, _contents (), _name "on the glass walkway", _description ". A long, slender walkway, heading south and " "northeast. Handrails of any sort are absent. You can see " "jungle far below. To the south is a huge brick structure.%n"; thing templeplatform: north glasswalkten, east templestart, _contents (), _name "on the temple's balcony", _description ". A stone ledge, with a carved stone ledge surrounding it. " "It overlooks the rain forest, which extends as far as the eye " "can see. To the east, the temple's walls extend up very, " "very high. There is a door cut through it. There is a " "glasswalk to the north.%n"; thing templestart: south littleroomtemple, east maintemple1, west templeplatform, _contents (), _name "in the temple", _description ", fairly well lit with lamps set in wall niches. " "A hall goes off to the east, and there are doorways to the " "west and south. Statues of nude couples in various embraces " "line the walls.%n"; thing littleroomtemple: north templestart, _contents (shakers), _name "in a little room", _description " just off the main temple. " "There is a long table in the center of the room, and padded " "benches line the walls.%n"; thing maintemple1: east maintemple2, west templestart, _contents (), _name "in the main part of the temple", _water true, _description ". It is a large area, of lofty height and great length, " "supported on both sides by rows of columns of marble of " "variegated hues; between each of the pillars, supported on " "alabaster pedestals, stands a number of masterpieces of " "sculpture, in the finest Carrera marble, representing nude " "females in every position possible in which can be combined " "both grace and lasciviousness.%n" " So natural do they appear that with a piece of guaze " "thrown over their shoulders, one could mistake them for " "living witnesses, flesh and blood, so admirably is their hair " "chisled out, representing the mode of wearing it by women of " "defferent countries, so well is the rounded swell of their " "breasts imitated, and then, furthur down, the short curly " "that ornaments the beautiful life-like pouting lips below, " "that one is almost tempted to advance and feel if they were " "not living. It is a most splendid scene.%n" " The temple continues to the east.%n"; thing maintemple2: west maintemple1, /* down tempbase1, */ _contents (), _name "in the main part of the temple", _description ". It is incredibly magnificent, with all the " "statues and other adornments. " "There is a huge idol here, with large glittering eyes.%n"; thing tempbase1: east tempbase2, up maintemple2, climb maintemple2, _contents (), _name "in the temple basement", _description ". Boxes of various sizes line the walls. More can be seen " "to the east.%n"; thing tempbase2: down _jumpdownhole, jump _jumpdownhole, east _waterheater, west tempbase1, _contents (), _name "in the base of the temple", _description ". Boxes of various sizes line the walls. More can be seen " "to the west. The basement appears to head west, but there is " "large hot water heater, coated with something, in the way. " "There is a hole, about 10m in diameter in the middle of the " "floor. A glint of light can be seen at the bottom.%n"; thing lavapathone: north crossroads, southeast lavapathtwo, _contents (), _name "on the lavapath", _description ". The path winds through an old lava flow. It was cut" " laboriously thousands of years ago, as a path for kings, " "dead these many centuries, to follow when their kingdoms " "were at their height.%n"; thing lavapathtwo: _contents (), _name "on the lavapath", northwest lavapathone, south lavapaththree, east lavapathfour, _description ". A winding, branching path cut " "through solid lava.%n"; thing lavapaththree: southeast lavapathsix, southwest lavapathfive, north lavapathtwo, _contents (), _name "on the lavapath", _description ". A winding, branching path cut " "through solid lava.%n"; thing lavapathfour: _contents (), _name "on the lavapath", northeast lavapathtwenty, east lavapathtwentyone, west lavapathtwo, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathfive: _contents (), _name "on the lavapath", south lavapathten, southwest lavapathnine, northeast lavapaththree, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathsix: _contents (), _name "on the lavapath", south lavapatheight, east lavapatheleven, northeast lavapathseven, northwest lavapaththree, _description ". A winding, branching path cut " "through solid lava.%n"; thing lavapathseven: _contents (), _name "on the lavapath", southwest lavapathsix, _description ". A winding, branching path cut through solid lava.%n"; thing lavapatheight: _contents (), _name "on the lavapath", north lavapathsix, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathnine: _contents (), _name "on the lavapath", northeast lavapathfive, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathten: _contents (), _name "on the lavapath", north lavapathfive, _description ". A winding, branching path cut through solid lava.%n"; thing lavapatheleven: _contents (), _name "on the lavapath", west lavapathsix, northeast lavapathtwelve, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathtwelve: _contents (), _name "on the lavapath", southwest lavapatheleven, south lavapaththirteen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapaththirteen: _contents (), _name "on the lavapath", north lavapathtwelve, south lavapathfourteen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathfourteen: north lavapaththirteen, west lavapathfifteen, _contents (), _name "on the lavapath", southeast lavapathsixteen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathfifteen: _contents (), _name "on the lavapath", east lavapathfourteen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathsixteen: _contents (), _name "on the lavapath", northeast lavapathseventeen, northwest lavapathfourteen, _description ". A winding, branching path cut through " "through solid lava.%n"; thing lavapathseventeen: _contents (), _name "on the lavapath", east lavapathnineteen, southwest lavapathsixteen, north lavapatheightteen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapatheightteen: _contents (), _name "on the lavapath", south lavapathseventeen, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathnineteen: _contents (), _name "on the lavapath", west lavapathseventeen, northeast lavapathtwentytwo, southeast lavapathtwentythree, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathtwenty: _contents (), _name "on the lavapath", southwest lavapathfour, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathtwentyone: _contents (), _name "on the lavapath", west lavapathfour, _description ". A winding, branching path cut through solid lava.%n"; thing lavapathtwentytwo: _contents (), _name "on the lavapath", southwest lavapathnineteen, northwest lavapathtwentyfour, _description _lavapathtwentytwo_desc; thing lavapathtwentythree: _contents (), _name "on the lava path", northwest lavapathnineteen, _description ". A winding, branching path cut through solid lava. " "On the side of the path: 'grbbl'.%n"; thing lavapathtwentyfour: _contents (), _name "on the lavapath", southeast lavapathtwentytwo, northwest pileofrocks, _description ". A winding, branching path cut through solid lava.%n"; thing pileofrocks: southeast lavapathtwentyfour, _contents (knife), _name "at a pile of rocks", _description " composed mainly of " "bits of lava broken off the sides of the path. It fills the " "pathway right up to the rim.%n"; thing fone: southwest flostone, _contents (), _name "on a thin path", south crossroads, east ftwo, north flostone, west flostone, northeast flostone, northwest flostone, southeast flostone, _description " through the forest.%n"; thing ftwo: west fone, north fthree, east flosttwo, south flosttwo, northeast flosttwo, northwest flosttwo, southeast flosttwo, southwest flosttwo, _contents (), _name "on a thin path", _description " through the forest.%n"; thing fthree: south ftwo, east ffour, north flostone, west flostone, northeast flostone, southeast flostone, southwest flostone, northwest flostone, _contents (), _name "on a thin path", _description "through the forest.%n"; thing ffour: west fthree, north ffive, east flosttwo, south flosttwo, northeast flosttwo, northwest flosttwo, southeast flosttwo, southwest flosttwo, _contents (), _name "on a thin path", _description " through the forest.%n"; thing ffive: south ffour, east treebase, west flostone, north flostone, northeast flostone, northwest flostone, southeast flostone, southwest flostone, _contents (), _name "on a thin path", _description " through the forest.%n"; thing flostone: _name "in the forest", north flosttwo, south flosttwo, east flosttwo, west flosttwo, southeast flosttwo, southwest flosttwo, northeast flosttwo, northwest flosttwo, up flosttwo, down pits, _contents (), _description " surrounded by trees.%n"; thing flosttwo: _name "in the forest", north flostone, south flostone, east flostone, west flostone, southeast flostone, southwest flostone, northeast flostone, northwest flostone, up flostone, down pits, _contents (), _description " surrounded by trees.%n"; thing pits: _contents (), _name "in a small room", _description " with the walls being make of rocks mortared together, some " "protruding more than others.%n", climb pitpass0; thing pitpass0: _contents (), _name "in a low chamber", _description " with walls of mortared stone. A passage heads " "east and a small hole leads down.%n", east pitpass1, down pits; thing pitpass1: _contents (), west pitpass0, east _pitpass2, _name "in an old rock walled passage", _description " heading east and west. The walls are cold to the touch, " "and are covered with condensation.%n"; thing pitpass2: _contents (), west pitpass1, east pitpass3, _name "in a small round room", _description "with exits to the east and west. The walls, floor, and " "ceiling are made of rock slabs.%n"; thing pitpass3: west _pitpass2, east pitroom1, _contents (), _name "in an old rock walled passage", _description "heading east and west. The walls are cold to the touch, " "and are covered with condensation.%n"; thing pitelev1: up _pe_ring2, _contents (), down _slimeslide, _name "at the bottom of a deep shaft", _description ". There is a grate underneath you, and a grating to " "the east, behind which a tunnel can be seen.%n"; thing pitelev2: up pitelev3, down pitelev1, east pittunnel2, _contents (), _name "floating in a deep shaft", _ringfloat true, _description ". To the east, a tunnel is seen.%n"; thing pitelev3: up pitelev4, down pitelev2, west pittunnel3, _contents (), _name "floating in a deep shaft", _ringfloat true, _description ". You can see the bottom some distance below " "you. There is a tunnel to the west.%n"; thing pitelev4: up pitelev5, down pitelev3, east pittunnel4, _contents (), _name "floating in a deep shaft", _ringfloat true, _description ". You can see the bottom quite a distance below " "you. There is a tunnel to the east.%n"; thing pitelev5: up pitelev6, down pitelev4, west pittunnel5, _contents (), _name "floating in a deep shaft", _ringfloat true, _description ". You can see the bottom a great distance " "below you, and above you a faint glint of light. There is a" "tunnel to the west.%n"; thing pitelev6: up pitpass2, down pitelev5, east pittunnel6, _contents (), _name "floating in a deep shaft", _ringfloat true, _description ". You can barely see the bottom far, far below " "you. You can see a glimmer of light above you. There is a " "tunnel to the east.%n"; thing pitelev7: up pitelev8, down pitpass2, _contents (), _ringfloat true, _name "floating in a deep shaft", _description ". You can see the roof above you, and a light beneath you.%n"; thing pitelev8: up _traptolake, down pitelev7, _contents (), _ringfloat true, _name "floating in a deep shaft", _description ", at the top of the shaft. There is a trapdoor above you.%n"; thing pittunnel1: east pitringroom, west pitelev1, _contents (), _name "in a rock walled tunnel", _description ". To the west lies a deep shaft. To the east is a room in " "which a flickering light can be seen.%n"; thing pittunnel2: west _topitelev2, _contents (), _name "in a foul-smelling tunnel", _description " which has the floor " "covered with patches of a foul green slime. There is an " "airtight door to the east.%n"; thing pittunnel3: east _topitelev3, west pittunnel3_2, _contents (), _name "in a tunnel with a triangular cross-section", _description ". The walls are glowing green, and are pulsing at a rate " "of 72 cycles per minute. The tunnel continues west, and " "is rapidly narrowing.%n"; thing pittunnel3_2: east pittunnel3, west _windingpass, _contents (), _name "in a tunnel with a triangular cross-section", _description ". The walls are glowing green, and are pulsing at 72 cycles " "per minute. The tunnel ends here except for a small hole " "about 3 cm in diameter.%n"; thing pittunnel4: west _topitelev4, /* east somewhereelse, */ _contents (), _name "in a low tunnel", _description ". The walls are rock, braced by timbers. The shaft is to " "the west. There is a heavy wooden door to the east.%n"; thing pittunnel5: east _topitelev5, /* west somewhereelse, */ _contents (), _name "in a cold tunnel", _description ", so cold that there is frost on the walls, which you see " "are made of stainless steel. To the west, there is a very " "heavy chrome-vanadium steel door. The shaft is to the east.%n"; thing pittunnel6: west _topitelev6, east _construction, _contents (), _name "in large tunnel", _description " that is in the process of being built, as evidenced by the " "various machinery, etc. that is scattered around.%n"; thing pitroom1: west pitpass3, _contents (bar), _name "in a small room", _description " that has the walls covered in grease and soot. There is " "a passage way heading west from here.%n"; thing pitringroom: west pittunnel1, _contents (ring, tongs), _name "in a dark room", _description "lit only by a fire in the center of the room. The walls are " "of stone, covered with little patches of moss and mold. A " "passage leads west.%n"; thing pitwinding1: forward pitwinding2, backward pittunnel3_2, _name "in a very small winding tunnel", _contents (), _description " about 3 cm in diameter. The tunnel extends in only two " "directions, forward and backward.%n"; thing pitwinding2: forward pitwinding3, backward pitwinding1, _name "in a very small winding tunnel", _contents (), _description " about 3 cm in diameter. The tunnel extends in only two " "directions, forward and backward.%n"; thing pitwinding3: left pitwinding4, right pitwinding5, _contents (), _name "in a very small winding tunnel", _description " about 3 cm in diameter. The tunnel branches here to the " "left and right.%n"; thing pitwinding4: forward pitroom2, backward pitwinding3, _contents (), _name "in a very small winding tunnel", _description " about 3 cm in diameter. The tunnel extends forward and " "backward.%n"; thing pitwinding5: forward pitroom3, backward pitwinding4, _contents (), _name "in a very small winding tunnel", _description " about 3 cm in diameter. The tunnel extends forward and " "backward.%n"; thing pitroom2: east pitwinding4, west pithob1, _contents (slime), _name "in a little room", _description " with the walls colored " "in red and green stripes. A large passage heads west, while " "to the east is a 3 cm diameter hole in the wall.%n"; thing pitroom3: east pithob4, _contents (axe), _name "in a fair-sized room", _description " that has a glass " "wall to the east. Looking out, it is seen that this room " "must be near and slightly above the balcony, as both the " "steps and dock can be seen almost directly bolow. A passage " "heads out of here to the east.%n"; thing pithob1: backward pitroom2, forward pithob2, _contents (), _name "in a large winding passage", _description " heading " "God-knows where. (Honestly, I do know!)%n"; thing pithob2: forward _hobbit, backward pithob1, _contents (), _name "in a large winding passage", _description " heading " "off in some weird direction. There is a middle-aged " "hobbit standing nearby, looking at you.%n"; thing pithob3: backward pithob3, forward pithob4, _contents (), _name "in a large winding passage", _description " heading forward and backward.%n"; thing pithob4: forward pitroom3, backward pithob3, _contents (), _name "in a large winding passage", _description " heading forward and backward.%n"; thing pithall1: west _standard, east pithall2, _contents (), _name "in a long, long tunnel", _description ", heading east. The walls are smooth plastic.%n"; thing pithall2: west pithall1, east pithall3, south icecave1, down icecave1, _contents (), _name "in a long, long tunnel", _description ", heading east and west. The walls are " "smooth plastic, but to the west the wall has a jagged hole " "in it, and a passage leading down can be seen. An icy breeze " "blows up from it.%n"; thing pithall3: west pithall2, east _cube, _contents (), _name "in a long, long tunnel", _description ", heading west. To " "the east, the passage is completely blocked by a huge " "green gelatinous cube.%n"; thing pithall4: east pithall5, west pithall3, up pitwet1, north pitwet1, _contents (), _name "in a long, long tunnel", _description ", heading east and west. There is a side passage leading up " "to the north.%n"; thing pithall5: west pithall4, _contents (), _name "in a long, long tunnel", _description ", which ends here. It heads back to the west.%n"; thing icecave1: up pithall2, north pithall2, _contents (), south icecave2, _name "in a cold tunnel", _description ". There is frost on the walls, and an icy breeze brushes " "past you. The tunnel continues south.%n"; thing icecave2: north icecave1, east icecave3, _contents (), _name "in a very cold tunnel", _description ". The walls are " "covered with ice, and the floor of the tunnel is somewhat " "slippery also. The tunnel turns east here.%n"; thing icecave3: west icecave2, east icecave4, _contents (), _name "in a large cave", _description ", with a high roof, from " "which a large number of huge, jagged, stalactites of ice are " "hanging. The cave floor is covered with ice and snow, and " "the air is very cold. The cave continues to the east.%n"; thing icecave4: west icecave3, /* east volcano1, */ _contents (), _name "in a large cave", _description ", with a " "high roof, from which stalactites of ice are suspended. " "The cave comes to an end here, save for a closed asbestos " "door.%n"; thing volcano1: west icecave4, north _burnup, south _burnup, east _burnup, southeast _burnup, northeast _burnup, _contents (brand), _name "on a small ledge", _description " set in the west face of a cliff. The ledge is almost " "at the point of being innundated by molten lava, which is " "only a few metres below you. The lava is in the form of " "a large lake, and is being spewed out at a progidal rate by a " "volcano to the northeast. It is extremely hot here. A door " "leads back into the cliff to the west.%n"; thing pitwet1: down pithall4, south pithall4, _contents (), _name "in a small side passage", _description " with a watertight door at the end, just to the north.%n"; thing pitwet2: south pitwet1, west pitwet3, _contents (), _name "in a wet, smooth-walled tunnel", _description ". The air is " "moist, and a fresh breeze blows from the west.%n"; thing pitwet3: up lakepathone, east pitwet2, _contents (), _name "in a wet, smooth-walled tunnel", _description ". There is " "a hatch right above, through which daylight is shining.%n"; thing sulfurpit: _contents (), dive pits, _name "in a pool of molten, boiling sulfur", _description " which will rapidly parboil you if you don't get out.%n"; thing glassafter: west pillar, east fissureone, _contents (), _name "on the shattered glasswalk", _description "'s end. The " "ground is scorched here, and partially melted. Huge fissures " "split the earth to the east.%n"; thing roomnorthafter: up fissureone, climb fissureone, south roomsouthafter, _contents (marblechunk), _name "in the remains of The Room", _description ". Broken marble columns litter the floor, along with " "fragments of painted plaster fallen from the roof. Charred " "fabric covers the walls. The roof has fallen in in places, " "and there is a large gaping crack in the ceiling, through " "which the sun is shining.%n"; thing roomsouthafter: north roomnorthafter, _contents (), _name "in the remains of The Room", _description ". Broken marble columns litter the floor. Pieces of painted " "plaster litter the floor. Charred fabric covers the walls. " "The roof has fallen down almost to the floor in the center, " "and it is very difficult to move around. There are doorways " "choked with rubble to the east and west.%n"; thing fissureone: down roomnorthafter, west glassafter, _contents (), east fissuretwo, _name "on the fissured land", _description ". There are gigantic fissures, easily big enough to drive a " "truck through, splitting the earth all around. Many of them" " can be gone down into. There is a shattered glass walkway " "to the west. The fissures extend far to the east.%n"; thing fissuretwo: west fissureone, east fissurethree, _contents (), _name "on the fissured land", _description ". There are " "many fissures splitting the earth here, which is partially " "melted in some places. They are fairly small in this area.%n"; thing fissurethree: west fissuretwo, down fissurefour, east _radioactive, north _radioactive, south _radioactive, _contents (), _name "on the fissured landscape", _description ". There are " "gigantic fissures splitting the earth in this area. " "Just at your feet lies one big enough to lose a train " "in without even trying. It goes down a long, long ways. " "Farther on, the land is a radioactive wilderness.%n"; thing fissurefour: up fissurethree, climb fissurethree, down fissurefive, _contents (), _name "in the deep fissure", _description ". It is a very deep, wide fissure, with walls " "that were formed when the cliff split under the blast. " "It continues to go down.%n"; thing fissurefive: up fissurefour, down dockafter, _contents (), _name "in the deep fissure", _description ". It is a very deep, " "wide fissure, with walls made of the split cliff. The fis" "sure continues downwards and upwards.%n"; thing dockafter: up fissurefive, east shoreafter, south lakeafterone, _contents (), _name "at the remains of the dock", _description ". The end of the dock juts out from a mass of " "broken rock that has tumbled from the shattered cliff. " "In the distance, it is seen that the cliff has crumbled " "on all sides, and is now just a mass of shattered rock in" " some places. Nearer to you, and more surprising, you " "see that the lake has vanished!! The bed remains, but " "all the water has dissapeared because of the blast.%n"; thing shoreafter: east crossroadsafter, southwest lakepathoneafter, west dockafter, _contents (), _name "at what used to be the east end of the lake", _description ". The ground is largely vitrified here, and " "has a slight glow to it. It is very, very hot and dry.%n"; thing crossroadsafter: north charcoalone, east _radioactive, down _dugout, south _moltenlava, west shoreafter, _contents (), _name "at what used to be the crossroads", _description ". The ground here is tossed up in what looks " "like waves. The ground is pure glass, and glows. I would " "advise leaving quickly, before you also start to glow. " "A black field can be seen to the north. To the south, a mass " "of molten lava is seen. There is a deep hole here.%n"; thing dugout: up crossroads, _contents (), _name "in the foxhole", _description ". A deep hole dug " "in the sand near the crossroads.%n"; thing charcoalone: north charcoaltwo, south crossroadsafter, northwest charcoaltwo, northeast charcoaltwo, southeast charcoaltwo, east charcoaltwo, southwest charcoaltwo, west charcoaltwo, _contents (), _name "on the remains of the forest", _description ". The forest has been burnt to a " "mass of charcoal. For long distances to the north, east, " "and west, all that can be seen is a blackened plain.%n"; thing charcoaltwo: north charcoalthree, south charcoalone, southeast charcoalthree, east charcoalthree, west charcoaltwo, northeast charcoalone, northwest charcoalthree, southwest charcoalthree, _contents (), _name "on the remains of the forest", _description ". The forest has been burnt to a mass of " "charcoal. For long distances in any direction, all that " "can be seen is a blackened plain.%n"; thing charcoalthree: north charcoalthree, south charcoalthree, east charcoalthree, west charcoalthree, southeast charcoalthree, southwest charcoalthree, northeast charcoalthree, northwest charcoalthree, _contents (), _name "in the remains of the forest", _description _bones; thing lakepathoneafter: north lakeafterone, northeast shoreafter, southwest lakepathtwoafter, _contents (), _name "on the remains of the path by the lake", _description ". The path is covered fairly deeply with " "broken rock, crumbled from the cliff above. The land has " "been greatly altered, with the lake bed being visible to " "the north. The easiest route along the old " "lakeside lies to the southwest.%n"; thing lakepathtwoafter: up rubbleheapafter, climb rubbleheapafter, clamber rubbleheapafter, northeast lakepathoneafter, north lakeafterthree, south rubbleheapafter, _contents (), _name "on the remains of the path by the lake", _description ". The path is covered to a great depth by debris that has " "fallen from the crumbled cliff to the south. The cliff has " "fallen down so much that it is now possible to climb it. " "The dry lakebed lies to the north, and far to the north, a " "very high, fissured cliff can be seen. It is very hot. " "A dry wind blows from the south.%n"; thing rubbleheapafter: north lakepathtwoafter, south _topa1, southwest _topa2, down _topa1, _contents (), _name "on the crumbled remains of the cliff", _description ". Here, the cliff has totally crumbled away, leaving a path " "into the country beyond, down and to the south. The land " "there seems barren, but moving things can be seen.%n"; thing lakeafterone: north dockafter, south lakepathoneafter, west lakeaftertwo, southwest lakeafterthree, _contents (), _name "on the lake bottom", _description ". A large, fairly flat " "plain composed of dried and hardened mud, with the occasional" " large rock relieving the monotony. The lake bed is seen " "to continue to the west and southwest.%n"; thing lakeaftertwo: south lakeafterthree, east lakeafterone, _contents (), _name "on the lake bottom", _description ". A large," " flat mud plain, having the occasional rock. To the west " "lies a huge mass of shattered rock from the cliff above. " "It is very hot.%n"; thing lakeafterthree: north lakeaftertwo, northeast lakeafterone, south lakepathtwoafter, _contents (fish), _name "on the lake bottom", _description ". A large, flat mud plain, having the occasional" " large rock relieving the monotony. To the west lies a " "huge mass of shattered rock from the cliff still towering " "above you. It is very hot. A dry wind blows from " "the south.%n"; thing templeafter: southeast _pa8thing, _contents (brick), _name "at the remains of the temple", _description ". It is now " "just a gigantic pile of shattered masonry, in a field full of " "giant burnt tree trunks. Footprints lead to the southeast.%n"; thing pa1: north _cantclimb, south _pa3thing, southeast _pa5thing, southwest _pa4thing, west _pa2thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is partially fused to glass%n"; thing pa2: northeast _cantclimb, east _pa1thing, south _pa4thing, west _pa8thing, southeast _pa3thing, southwest _pa6thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is " "partially fused to glass.%n"; thing pa3: north _pa1thing, south _pa9thing, east _pa5thing, west _pa4thing, northwest _pa2thing, southwest _pa7thing, southeast _pa11thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is " "partially fused to glass.%n"; thing pa4: north _pa2thing, northeast _pa1thing, east _pa3thing, south _pa7thing, southeast _pa9thing, west _pa6thing, northwest _pa8thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is " "partially fused to glass.%n"; thing pa5: northwest _pa1thing, west _pa3thing, southwest _pa9thing, south _pa11thing, southeast _pa10thing, _contents (), _name "on the radioactive plain", _description ". The ground " "glows strongly, and is partially fused to glass.%n"; thing pa6: north _pa8thing, northeast _pa2thing, east _pa4thing, southeast _pa7thing, _name "on the radioactive plain", _contents (), _description ". The ground " "glows strongly, and is partially fused to glass.%n"; thing pa7: northwest _pa6thing, north _pa4thing, east _pa3thing, northeast _pa9thing, swim _toosa1, south _toosa1, _contents (), _name "on the radioactive plain", _water true, _description ". The ground glows strongly, and is partially fused to " "glass. There is a river flowing by to the south, " "and it too is very radioactive.%n"; thing pa8: northwest _templeafterthing, east _pa2thing, southeast _pa4thing, south _pa6thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is partially fused to glass. To " "the northwest, there is a large pile of something visible.%n"; thing pa9: north _pa3thing, northeast _pa5thing, _water true, east _pa11thing, swim _toosa1, south _toosa1, west _pa7thing, northwest _pa4thing, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, " "and is partially fused to glass. To the south, a glowing " "radioactive river flows by.%n"; thing pa10: swim _toosa1, south _toosa1, west _pa11thing, northwest _pa5thing, _water true, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and the ground is fused to " "a greenish glass. To the south, there is a fast-flowing, " "radioactive river flowing west.%n"; thing pa11: north _pa5thing, east _pa10thing, south _toosa1, swim _toosa1, west _pa9thing, northwest _pa3thing, _water true, _contents (), _name "on the radioactive plain", _description ". The ground glows strongly, and is partially fused to " "greenish glass. To the south, there is a westerly flowing " "river, which is quite radioactive.%n"; thing osa1: north _topa10, swim _topa10, west _osa2thing, _contents (), _water true, _name "on the south bank of the radioactive river", _description ". The river flows by, undisturbed by any living creature. " "It is totally dead. The south side here is rather cramped, " "with the river bank rising steeply above. " "It is possible to walk west.%n"; thing osa2: east _osa1thing, west _osa3thing, north _topa10, south _lowrockbuildingthing, _contents (), swim _topa10, _water true, _name "on the south bank of the radioactive river", _description "The river seems totally dead. It glows strongly. " "To the south, a structure of some sort can be seen. " "The river bank continues east and west.%n"; thing osa3: east _osa2thing, swim _topa10, north _topa10, _contents (), _water true, _name "on the south bank of the radioactive river", _description "The river is totally dead. The river bank is passable to the " "east. It is extremely quiet, and the air seems dead.%n"; thing lowrockbuilding: north _osa2thing, south _exitout, _name "in the low rock building", _contents (sculpture), _description ", a roofless, brick-walled structure. There is a " "doorway to the north, and to the south is a door marked " "'EXIT'%n"; /* And now for some verbs. (Finally!) */ verb (quit, stop): noun * : _getout := true; verb god: noun * : output "Yes, what do you want? I'm a very busy" " deity you know.%nYou'll have to make an appointment" " with my secretary.%nI may or may not get back to you.%n"; verb (hint, help): noun * : if _loc._hintvalue is absent then output "I don't think I shall tell you anything.%n" else output "I can give you a little bit of information, but it is " "going to cost you ", _loc._hintvalue, " demerits. Do you " "still want to hear the voice of God?%n"; if not _yesno() then output "OK%n" else output _loc._hint, newline; _demerits := _demerits + _loc._hintvalue; if _loc._hintvalue isnt absent then _loc -- _hintvalue fi fi fi; verb (pull): noun : output "Pull what?%n"; noun "greenlever": if _loc ~= roundhallfour or _pulledright then output "What ", _nounstring, "?%n"; elif _pulledtimes > 5 then output "OK. Nothing happens.%n"; elif _pulledgreen then output "OK. Nothing happens.%n"; _pulledtimes := _pulledtimes + 1; else output "OK. The lever clicks.%n"; _pulledtimes := _pulledtimes + 1; _pulledgreen := true fi; noun "redlever": if _loc ~= roundhallfour or _pulledright then output "What ", _nounstring, "?%n"; elif _pulledtimes > 5 then output "Nothing happens.%n"; elif _pulledred or not _pulledgreen then output "OK. Nothing happens.%n"; _pulledtimes := _pulledtimes + 1; else output "OK. The lever clicks.%n"; _pulledred := true; _pulledtimes := _pulledtimes + 1 fi; noun "bluelever": if _loc ~= roundhallfour or _pulledright then output "What ", _nounstring, "?%n"; elif _pulledtimes > 5 then output "Nothing happens.%n"; elif _pulledblue or not _pulledred then output "Nothing happens.%n"; _pulledtimes := _pulledtimes + 1; else output "OK. The lever clicks.%n"; _pulledblue := true; _pulledtimes := _pulledtimes + 1 fi; noun "blacklever": if _loc ~= roundhallfour or _pulledright then output "What ", _nounstring, "?%n"; elif _pulledtimes > 5 then output "OK. Nothing happens.%n"; elif not _pulledblue then output "Nothing happens.%n"; _pulledtimes := _pulledtimes + 1; else output "OK. The lever clicks. Suddenly, without warning, the " "entire west wall slides down into the floor, exposing a " "tunnel heading west!%n"; _loc._contents := emptylist; _pulledright := true; _score := _score + 15; roundhallfour..west := roundhallfive; roundhallfour._description := ", a very long, steel-" "walled tunnel, heading north. It continues to the " "west.%n" fi; noun * : output "Why? It might pull back.%n"; verb (injure, castrate, mutilate, damage, mangle): noun * : output "Yucch!! You ARE a violent little piece " "of puke, aren't you?%n"; verb shit: noun * : if _loc = wc then output "Ahh! Finally! Oh, what a relief!%n" else output "You are a disgusting little thing, aren't " "you? But, if you've got to go, you've got to go! " "Yucch!! There, are you satisfied?%n"; _demerits := _demerits + 10; _loc._contents <+ yucch fi; verb (piss, urinate): noun * : if _loc = wc then output "Ahh! Finally! Oh, that is a relief!!%n" else output "You digusting little piece of " "filth!%nUrgh!! There! I hope you're satisfied!"; _loc._contents <+ urgh; _demerits := _demerits + 10 fi; verb score: noun * : _net := _score - _demerits; output "At the moment, Watson, you have ", _score, " out of ", MAXISCORE, " points. You also have recieved ", _demerits, " demerits in ", _moves, " moves. This gives you a net " "score of ", _net, ".%n"; verb (show, describe, look, see): noun "off": output "You bloody asshole!%nYou irritating puke!%n"; noun * : if _dark then output "It's too bloody dark to do that!%n" else _see(false); _inventory() fi; verb (wear, "put-on"): noun : output _verbstring, " what, old toad?%n"; noun shoes: if _shoeson then output "You are already wearing the ", _nounstring, ".%n"; elif not shoes in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; else output "OK%n"; _shoeson := true; _carrying <- shoes fi; noun badge: if _badgeon then output "You are already wearing the ", _nounstring, ".%n"; elif not badge in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; else output "OK%n"; _badgeon := true; _carrying <- badge fi; noun * : output "You can't wear a ", _nounstring, ".%n"; verb (remove, takeoff, "take-off"): noun : output _verbstring, " what, old frimp?%n"; noun "clothes": output "My word! You are uninhibited!%n"; noun shoes: if not _shoeson then output "You aren't wearing the ", _nounstring, ".%n"; else output "OK%n"; _shoeson := false; _carrying <+ shoes fi; noun badge: if not _badgeon then output "You aren't wearing the ", _nounstring, ".%n"; else output "OK%n"; _badgeon := false; _carrying <+ badge fi; noun * : output "You aren't wearing the ", _nounstring, ".%n"; verb (hold): noun : output "Hold what?%n"; noun "breath": if _breathheld then output "You already are!!%n"; elif _loc ~= roofthree then output "Why? You have no need to!%n"; else output "OK%n"; _breathheld := true fi; noun * : output "If you want to get something, then use the " "word 'get'.%n"; verb (exhale, release): noun : output _verbstring, " what?%n"; noun "breath": if _breathheld then output "Whooooff!! About time!!%n"; _breathheld := false; elif _verbstring ~= "exhale" then output "Release what?%n"; else output "Whooooofff!!%n" fi; noun * : if _verbstring ~= "exhale" then output "If you want to get rid of something, you 'drop' it.%n"; else output "You are mighty weird if you want to exhale ", _nounstring, "!!%n" fi; verb (read, peruse): noun : output _verbstring, "what?%n"; noun (booklet): if booklet in _carrying then output "It says:%n" "'octcave s rotated n,w.n.n.n,w.w.n.w.s.w.s,w.n,w door.'%n" else output "I can't read something so far away!%n" fi; noun (paper): if paper in _carrying then output "It says: w 3/4 '", _comb_w3, "'.%n"; else output "Sorry, I can't!%n" fi; noun * : output "I'm afraid I can't read that!%n"; verb (decipher, decode, uncode): noun : output _verbstring, "what?%n"; noun (booklet): if _noun in _carrying then output "I have read it, and the " "meaning seems to be perfectly clear, to someon with a " "bit of insight.%n"; else output "What ", _nounstring, "?%n" fi; noun (paper): if _noun in _carrying then output "The code is so simple, " " that I am not going to bother.%n"; else output "What ", _nounstring, "?%n" fi; noun * : output "I can't decode THAT!!%n"; verb (kick, boot): noun : output _verbstring, " what?%n"; noun ("panel", "wall-panel"): if _loc = corridorfive and _loc.north isnt absent then output "Why?%n"; elif _loc ~= corridorfive then output "What ", _nounstring, "?%n"; else output "OK. BAMM!!!! It breaks down, and a room is seen " "beyond.%n"; _loc..north := labone fi; noun * : output "If I do, it might kick back!!%n"; verb jerk: noun : output "Same to you!%n"; noun "off": output "What, and get your terminal all messy?%n"; noun * : output "If I do, it might jerk back!%n"; verb (hi, hello, greetings, hey, howdy): noun * : output _verbstring, " to you too!!%n%n"; verb (unstick): noun * : output "You can't ", _verbstring, " the ", _nounstring, "!%n"; verb arm: noun : output "So what? I have two of them!%n"; noun bomb: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = gadget then output "You can't ", _verbstring, " a ", _nounstring, " with a ", _noun2string, "!%n"; elif not gadget in _carrying then output "You're not carrying the ", _noun2string, ".%n"; elif not _noun in _carrying or not _noun in _loc._contents then output "What ", _nounstring, "?%n"; elif _armed then output "The ", _nounstring, " is already ", _verbstring, "ed!%n"; else output "I sure hope you know what you're doing!! The ", _noun2string, " gives out a click. The bomb is now " "armed.%n"; _armed := true; bomb._name := "an 800 megaton black-painted hydrogen " "bomb, armed and dangerous!%n" fi; noun * : output "Sure, sure. You'll be wanting me to put legs on it next!%n"; verb (detonate, explode, blast): noun : output "Arrgghhh!! You violent types make me angry!! " " What the hell do you want me to ", _verbstring, "?%n"; noun bomb: if _count = 2 then output "With what?%n"; elif _noun2 ~= gadget then output "You can't be serious!%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif not _armed then output "Sorry, the ", _nounstring, " is not armed!%n"; elif not _placed or _loc ~= dugout then output "My, my!! You are a VERY destructive little bugger!!%n" "COUNTDOWN:%n 10%n 9%n 8%n 7%n 6%n" " 5%n 4%n 3%n 2%n" " 1%nDETONATE!!!!!!!!!!!!!!!!!!!!!!!!!!!!%n" "*****************************************************%n" "*****************************************************%n" "OH, MY GOD!! (I talk to myself occasionally) You've " "destroyed the world and everything in it!! Including " "yourself!!%n"; _demerits := _demerits + 50; _getout := true; else output "My, my!! You are a VERY destructive little bugger!!%n" "COUNTDOWN:%n 10%n 9%n 8%n 7%n 6%n" " 5%n 4%n 3%n 2%n" " 1%nDETONATE!!!!!!!!!!!!!!!!!!!!!!!!!!!!%n" "*****************************************************%n" "*****************************************************%n" "Now look at what you've done!!%n"; _dropall(); _detonated := true; _score := _score + 50; pillar._description := ". It is bent, twisted, and " "partially melted from the force of the blast. To the " "south lies a jagged mass of glass shards. To the east, " "the glass walkway is still passable, after a fashion. " "Below you, the ground is wrenched, torn, and seared " "clean of any living thing. The air is very dry.%n"; pillarbase._description := ". The ground is littered " "with shards of shattered glass, and a fine black dust " "covers everything. Much fallout of some sort has " "fallen here, as the land is a charred, radioactive " "wilderness. The badly damaged pillar rises above you. " "At your feet is a small depresion filled with shattered " "concrete.%n"; pillarbase..east := _radioactive; pillarbase..west := _radioactive; pillarbase..north := _radioactive; pillarbase..south := _radioactive; pillarbase..northeast := _radioactive; pillarbase..northwest := _radioactive; pillarbase..southeast := _radioactive; pillarbase..southwest := _radioactive; pillarbase.down := _bombunder; pillar.east := glassafter; pillar.south := _standard; dugout.up := crossroadsafter; _move(pillar) fi; noun * : output "Why? Does you want it go boom-boom?%n"; verb unlock: noun : output _verbstring, " what?%n"; noun ("powerroomdoor", "powerroom-door"): if _loc ~= corridoreight then output "What ", _nounstring, "?%n"; elif not keys in _carrying then output "You usually need keys to unlock a door.%n"; elif corridoreight.east isnt absent then output "The door is already unlocked and open!%n"; else output "OK. Click! The door is unlocked, and swings open. A " "room is seen beyond.%n"; corridoreight..east := powerroomone; corridoreight._description := ", in the corridors. The " "corridor ends here, except for a doorway to the east.%n" fi; noun "door": if _loc = corridoreight then if not keys in _carrying then output "You usually need keys to unlock a door.%n"; elif corridoreight.east isnt absent then output "The door is already unlocked and open!%n"; else output "OK. Clicks! The door is unlocked, and swings open. " "A room is seen beyond.%n"; corridoreight..east := powerroomone; corridoreight._description := ", in the corridors. " "The corridor ends here, except for a doorway to the " "east.%n" fi elif _loc = corridorseven then output "You can't unlock it now, with what you have.%n"; elif _loc = passageone then if passageone.north isnt absent then output "What door?%n"; else output "Sorry, you can't unlock this door.%n" fi elif _loc = passagetwo then if passagetwo.west isnt absent then output "What door?%n"; else output "Sorry, you can't unlock this door.%n" fi elif _loc = passagethree then if passagethree.south isnt absent then output "What door?%n"; else output "Sorry, you can't unlock this door.%n" fi elif _loc = hallpastone then if not keys in _carrying then output "You will need some keys to unlock the door.%n"; else output "Sorry, wrong keys.%n" fi elif _loc = oct17 then if oct17.south isnt absent then output "The hatch is already unlocked.%n"; else output "This is a combination lock. I'll need to know " "the combination. Type in the numbers, separating " "each by a space:%n"; if not _checkcomb() then output "Wrong!!!!!!%n"; else oct17..south := weaponsrepository; oct17._description := ", an incredible mess of " "little tunnels. There is an open hatchdoor to " "the south.%n"; output "Correct! The hatchdoor swings open!!%n" "A room is seen beyond.%n"; fi fi elif _loc = warehouse then if _waresafeopen then output "The safe is already unlocked!%n"; else output "This is a combination lock. I'll need to know the " "combination. Type in the numbers, separating each " "by a space:%n"; if not _checkcomb_w() then output "Wrong!!!!!!%n"; else _waresafeopen := true; warehouse._description := " by the docks. There " "is an open safedoor here, with a button seen " "behind it.%n"; output "Correct! The safedoor swings open, " "exposing a button.%n" fi fi else output "What door?%n" fi; noun ("hatch", "hatchdoor"): if _loc ~= oct17 then output "What ", _nounstring, "?%n"; elif oct17.south isnt absent then output "The hatch is already unlocked.%n"; else output "This is a combination lock. I'll need to know " "the combination. Type in the numbers, seperating " "each by a space:%n"; if not _checkcomb() then output "Wrong!!!!!!%n" else oct17..south := weaponsrepository; oct17._description := ", an incredible mess of " "little tunnels. There is an open hatchdoor to " "the south.%n"; output "Correct! The hatchdoor swings open!!%n" "A room is seen beyond.%n"; fi fi; noun ("safe", "safedoor"): if _loc = walkinsafe then output "Sorry, everything is locked up tight in such a manner " "that you or I cannot open them.%n" elif _loc ~= warehouse then output "What ", _nounstring, "?%n"; elif _waresafeopen then output "The safe is already unlocked!%n"; else output "This is a combination lock. I'll need to know the " "combination. Type in the numbers, seperating each " "by a space:%n"; if not _checkcomb_w() then output "Wrong!!!!!!%n" else _waresafeopen := true; warehouse._description := " by the docks. There " "is an open safedoor here, with a button seen " "behind it.%n"; output "Correct! The safedoor swings open, " "exposing a button.%n" fi fi; noun ("cabinets", "file-cabinets"): if _loc = walkinsafe then output "Sorry, everything is locked in such a manner that you " "or I can't open them!%n"; else output "What ", _nounstring, "?%n" fi; noun * : output "You can't ", _verbstring, " a ", _nounstring, ", you stupid twit!%n"; verb open: noun : output _verbstring, " what?%n"; noun ("safedoor", "safe"): if _loc ~= walkinsafe or _loc ~= warehouse then output "What ", _nounstring, "?%n"; elif _loc = walkinsafe then output "Sorry, everything is locked up tight.%n"; elif _waresafeopen ~= true then output "The ", _nounstring, " is tightly locked.%n"; else output "The ", _nounstring, " is already open!%n" fi; noun ("vault", "vaultdoor"): if _loc ~= weaponsrepository or _loc ~= corridorseven then output "What ", _nounstring, "?%n"; else output "The ", _nounstring, " is too tightly closed.%n" fi; noun ("hatch", "hatch-door"): if _loc ~= oct17 then output "What ", _nounstring, "?%n"; elif oct17.south isnt absent then output "The ", _nounstring, " is already ", _verbstring, "!%n" else output "The ", _nounstring, " is locked!%n" fi; noun "door": if _loc = oct17 then if oct17.south isnt absent then output "The hatch-door is already ", _verbstring, "!%n"; else output "The ", _nounstring, " is locked!%n" fi elif _loc = warehouse then if _waresafeopen then output "The safedoor is already ", _verbstring, ".%n"; else output "The safedoor is locked.%n" fi elif _loc = corridoreight then if corridoreight.east isnt absent then output "The door is already open!%n"; else output "The door is locked!%n" fi elif _loc = passageone then if passageone.north isnt absent then output "What door?%n"; else output "The door is tightly closed.%n" fi elif _loc = passagetwo then if passagetwo.west isnt absent then output "What door?%n"; else output "The door is tightly closed.%n" fi elif _loc = passagethree then if passagethree.south isnt absent then output "What door?%n"; else output "The door is tightly closed.%n" fi elif _loc = hallpastone then output "The door is locked.%n"; elif _loc = pitwet1 then if brand in _carrying then output "You open the door, and water pours out. " "However, the brand you are carrying touches the " "water and turns it all to steam. After a few " "minutes, all the water is gone, and a way north " "is exposed.%n"; pitwet1..north := pitwet2; pitwet1._description := " with a passageway heading " "north visible.%n" else output "You open the door, but you are quickly " "washed away by the tremendous flood of water that " "pours through.%n"; _move(pithall1) fi else output "Sorry, no can do!!%n" fi; noun ("cabinets", "file-cabinets"): if _loc = walkinsafe then output "Sorry, they are locked up tight!%n"; else output "What ", _nounstring, "?%n" fi; noun * : output "You can't ", _verbstring, " that!%n"; verb (push, press): noun : output _verbstring, " what?%n"; noun "button": if _loc ~= warehouse then output "What ", _nounstring, "?%n"; elif not _waresafeopen then output "What ", _nounstring, "?%n"; else output "OK. Hey!! The floor is sinking!! It's " "actually a giant elevator!! A pit with ladder leading " "down the side is exposed.%n"; dict -- button; warehouse..down := complexstart; warehouse._description := " by the docks. There is a " "safedoor hanging open here, near a large pit in the " "floor. A ladder leads downwards.%n" fi; noun * : output "Why? It might push back!%n"; verb (place, position): noun : output _verbstring, " what?%n"; noun (bomb): if not bomb in _carrying or not bomb in _loc._contents then output "What ", _nounstring, "?%n"; elif _loc ~= padthree then if _loc._torch isnt absent then output "It's too wet to ", _verbstring, " the ", _nounstring, ".%n"; elif bomb in _carrying then _loc._contents <+ _noun; _carryweight := _carryweight - _noun._weight; _carrying <- _noun else output "The ", _nounstring, " is already on the ground!%n" fi elif _placed then output "The bomb is already in position!%n"; else output "The bomb slides smoothly into the hole, filling it " "completely. The pad is now a smooth pad of concrete " "with a black circle in the center.%n"; padthree._description := ". A very large, very sturdy " "concrete pad set in the middle of the forest. There is " "a 1.5m diameter black spot in the center, which is the " "end of the bomb showing. The pad continues west.%n"; _placed := true; if bomb in _carrying then _carrying <- bomb; _carryweight := _carryweight - _noun._weight fi; if bomb in _loc._contents then _loc._contents <- bomb fi; fi; noun * : output "No.%n"; verb (xyzzy, xzxzv, abracadabra, "abra-cadabra", "hocus-pocus", plugh, qzvalmnsppnov572abcdzwxyaeiou, alakazam, presto, "open-sesame", "hocuspocus", "fi-fie-foe-fum", "fi", "fie", "foe", "fum"): noun * : output "Good Christ! You must be the hundredth person " "to say that.%nNeedless to say, nothing happens.%n"; verb hang: noun : output "Hang what?%n"; noun painting: if _loc ~= hallone then output "Why?%n"; elif not painting in _carrying then output "You aren't holding the ", _nounstring, ".%n"; else output "OK. There! It looks very nice. The artist " "thinks so too, and retires off to his room.%n"; _hung := true; _carryweight := _carryweight - _noun._weight; hallone._description := " lit with dusty light bulbs. " "The walls are covered with tacky wallpaper, and there " "is a musty smell in the air. On one wall, there is a " "beautiful erotic painting hung up.%n"; _carrying <- _noun fi; noun "me": output "Quickly finding a piece of rope, I deftly flip" " it around your throat, and pull tight. Your eyeballs pop " "out of your head, and I then release you. You fall down, " "vomit a bit of blood, and then die.%n"; _demerits := _demerits + DIEPENALTY; _die(); noun "up": output "Click!%n"; _getout := true; noun * : output "How can I hang that?%n"; verb cut: noun : output "Slash what?%n"; noun "fabricdoor": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = knife then output "You can't ", _verbstring, " the ", _nounstring, " with a ", _noun2string, ".%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= passagethree or passagethree.south isnt absent then output "What ", _nounstring, "?%n"; else output "You'll make a fine 'Jack the Ripper' some day.%n" "RRRRRRRRRRRIIIIIIIIPPP!!!!!! (slash, tear)%n" "A hallway is exposed to the south.%n"; passagethree..south := hallthree; passagethree._description := " that is dimly lit " "with a bare 75 watt bulb hanging from the ceiling. " "To the south, a hallway can be seen.%n" fi; noun "metaldoor": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = welder then output "It is hard to ", _verbstring, " the ", _nounstring, " with a ", _noun2string, ".%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif not _welderlit then output "The ", _noun2string, " isn't on!%n"; elif not _loc = passagetwo or passagetwo.west isnt absent then output "What ", _nounstring, "?%n"; else output "SSSSSSSSSSSSSSS!! The metal door is quickly cut " "through, and falls away. A room is exposed to the " "west.%n"; passagetwo..west := halltwo; passagetwo._description := ". It is dimly lit by a bare " "60 watt bulb hanging from the ceiling. There is a room " "seen to the west.%n" fi; noun ("throat", "neck"): output "Ohhhh!! It feels so good to have my knife smoothly " "sliding through the delicate tissues of your ", _nounstring, ", and to feel your warm blood warm my " "chilly hands.%n"; _demerits := _demerits + DIEPENALTY; _die(); noun "wrists": output "Slash!! Blood!! Spurt!! Artery!! " "Gush!! Ah ha ha ha!!%nI never knew it could be " "this much fun!!%n"; _demerits := _demerits + DIEPENALTY; _die(); noun * : output "Give me a good reason and I might.%n"; verb slash: noun : output _verbstring, "what?%n"; noun "fabricdoor": cut."fabricdoor"(); noun "metaldoor": cut."metaldoor"(); noun ("wrists", "wrist"): cut."wrists"(); noun "throat": cut."throat"(); noun * : output "Why the hell should I ", _verbstring, " that?%n"; verb (burn, fry, incinerate, crisp): noun : output "I would love to, but ", _verbstring, " what?%n"; noun "fabricdoor": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = flamethrower then output "It is pretty hard to ", _verbstring, " a ", _nounstring, " with a ", _noun2string, ".%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= passagethree or passagethree.south isnt absent then output "What ", _nounstring, "?%n"; else output "The cloth is asbestos, and doesn't burn.%n" fi; noun ("rat"): if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = flamethrower then output "It is very hard to ", _verbstring, " the ", _nounstring, "with a ", _noun2string, ".%n"; elif not flamethrower in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; elif _loc ~= ledge or ledge.west isnt absent then output "What ", _nounstring, "?%n"; else output "Sure thing!! It's flamethrower time again!!!!!" " AHHA! HA! HA! HA HA HA!!!!!!%n>WHOOOSHHHHHH!!!!!< " "(hiss, bubble, bubble)%nThe rat crisps beautifully, and " "the charred body plummets to the forest floor below. " "Little babies crawl out of the woods and eagerly devour " "the rat's charred flesh. The ledge is now clear.%n"; ledge..west := entrance; ledge._description := ", about 2m wide, and 20m long. " "A dark little cave is seen just to the west.%n" fi; noun "metaldoor": cut."metaldoor"(); noun "woodendoor": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = flamethrower then output "You can't really ", _verbstring, " the ", _nounstring, "with a ", _noun2string, ".%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= passageone or passageone.north isnt absent then output "What ", _nounstring, "?%n"; else output "Right on, you frigging pyromaniac!!%nOnce more the " "flamethrower!%nKAWHHOOOOSSSSHHHHHHH!!!! (snap, " "crackle)%nThe door immediately catches fire, and burns " "through. A hallway is exposed to the north.%n"; passageone..north := hallone; passageone._description := ". It is dimly lit, with a " "single lit 40 watt light bulb hanging from the " "ceiling. There is a hallway to the north.%n" fi; noun "door": if _loc = passageone then if passageone.north isnt absent then output "What ", _nounstring, "?%n"; else burn."woodendoor"(); fi; elif _loc = passagetwo then if passagetwo.west isnt absent then output "What ", _nounstring, "?%n"; else cut."metaldoor"(); fi; elif _loc = passagethree then if passagethree.south isnt absent then output "What ", _nounstring, "?%n"; else burn."fabricdoor"(); fi; elif _loc = corridorseven then if corridorseven.east isnt absent then output "What ", _nounstring, "?%n"; else output "The door is made of a fire-resistant material.%n"; fi; elif _loc = corridorseven then output "A steel vaultdoor doesn't burn.%n"; else output "What ", _nounstring, "?%n"; fi; noun "me": output "Snap! Crackle! Pop! Your charred skeleton " "drops to the ground, whereupon I pick it up, mash it to " "powder, and take home to feed to my pet maggots.%n"; _demerits := _demerits + DIEPENALTY; _die(); noun * : output "Why the hell should I ", _verbstring, " that?%n"; verb (kill, destroy): noun : output "Yes, that's a verb. Very good, little one!!%n"; noun (god, "creator", "you"): output "%n *********%n" " * ZAP! *%n" " *********%n" " As a reward for your ignorance, and not-niceness " "against my sacred person, you have been zapped. This " "entitles you to reincarnation at a modest cost, or to a " "funeral, at the expense of your loved ones.%n"; _die(); _demerits := _demerits + DIEPENALTY; noun "guard": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = knife then output "You can't ", _verbstring, " the ", _nounstring, " with a ", _noun2string, "!%n"; elif not knife in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= office then output "What guard?%n"; elif _loc = office and _guarddead then output "The guard is already dead!!%n"; elif _loc = office and _appreciated then output "Why? All he did was appreciate your performance!%n"; else _spook := ?; if _spook > 7500 then output "You and the guard fight furiously for a period, but " "you finally get the best of him. You stab him " "furiously and repeatedly in the face and neck, " "satisfying your bloodlust. He lies dead on the " "floor.%n"; _guarddead := true; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _score := _score + 15; office._description := ", which looks like the office of one of the top men " "in the complex. There is a walk-in safe to the " "east. A security guard lies dead, in a pool of " "blood, on the floor%n"; else output "You and the guard fight furiously for a period, but " "he finally gets the best of you. He disarms you, " "and then deftly breaks your neck.%n"; _carrying <- knife; dict -- knife; _die(); _demerits := _demerits + DIEPENALTY; fi; fi; noun "cars": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = knife then output "You can't ", _verbstring, , _nounstring, " with a ", _noun2string, "!%n"; elif not knife in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif not (_loc = trapdoor and trapdoor.up is absent) then output "What cars?%n"; else output "With a fearsome leap, you pounce on one of the cars " "whizzing%nby. You stab it viciously, and it bucks and " "heaves, and finally%nthrows you off. But too late!!! " "Although it has thrown you back%ninto the manhole, you " "have fatally wounded it!! It rolls over%nand over, It's " "going into the ditch!!%nKA-BOOM!!!!! It bursts into " "flames!! It's dead!!%nAll the other cars are fleeing in " "terror!! The highway is empty!!%n"; _carsdead := true; _score := _score + 7; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; trapdoor..up := highwayone; trapdoor._description := ". Brilliant sunlight " "shines down around you. The manhole comes up in " "then middle of a major highway, presently deserted. " "You can see for miles around.%n"; fi; noun "dog": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = pot then output "You can't ", _verbstring, " a ", _nounstring, " with a ", _noun2string, "!%n"; elif not pot in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= orchard1 then output "What dog?%n"; elif _loc = orchard1 and _dogdead then output "I see no dog here! Just a pile of broken machinery!%n"; else output "Ok! BONGGGG!!! The dog's skull reverberates under the " "blow. Hey!! This dog is a robot!! With jeweled " "workings!! The parts lie smashed on the ground, and " "the jewels fall out to one side onto the ground.%n"; _loc._contents <+ jewels; _dogdead := true; orchard1..north := orchard2; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; orchard1._description := ", with the trees heavy " "with ripe fruit. A pile of machinery lies here, " "but who cares, with all that fruit a few feet to " "to the north!!%n"; fi; noun grog: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = "salt" or _noun2 = shakers then output "You attempt to kill the ", _nounstring, " with the ", _noun2string, ", but in vain. The ", _nounstring, " grabs " "you, and rips your head off. You are somewhat dead.%n"; _demerits := _demerits + 15; _die(); elif not shakers in _carrying then output "You are not carrying the ", _noun2string, ".%n"; elif not _nounstring in _loc._contents then output "What ", _nounstring, "?%n"; else output "You throw the salt on the ", _nounstring, ". It shrieks " "in agony, and proceeds to shrivel up. It continues to " "shrivel, until nothing is left.%n"; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _loc._contents <- _noun; _score := _score + 15; fi; noun plover: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = brick then output "You attempt to kill the ", _nounstring, " with the ", _noun2string, ", but in vain. The ", _nounstring, " grabs " "you, and rips your heart out with it's beak, and eats " "it. You are fairly dead.%n"; _demerits := _demerits + 20; _die(); elif not brick in _carrying then output "You are not carrying the ", _noun2string, ".%n"; elif not _nounstring in _loc._contents then output "What ", _nounstring, "?%n"; else output "You throw the brick at the ", _nounstring, ". The brick smashes the ", _nounstring, " in the head, and crushes " "it's face. It collapses in a heap, and sinks into the " "ground. The way is clear.%n"; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _loc._contents <- _noun; _score := _score + 20; fi; noun banth: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = "hands" or not _noun2 = "hand" then output "You attempt to kill the ", _nounstring, " with the ", _noun2string, ", but in vain. The ", _nounstring, " grabs " "you, and throws you to the ground. It then leaps upon " "you. As it weighs some hundreds of kilos, you are " "squashed like a bug. Your insides fly out and litter " "the ground. You are quite dead.%n"; _demerits := _demerits + 30; _die(); elif not _nounstring in _loc._contents then output "What ", _nounstring, "?%n"; else output "You and the ", _nounstring, " attack each other " "viciously. You wrestle it to the ground, and start " "smashing it with your fists of iron, quickly " "pulverising it to a mass of bloody pulp. In disgust " "you hurl the remains away from you.%n"; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _loc._contents <- _noun; _score := _score + 30; fi; noun kzin: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = fruit then output "You attempt to kill the ", _nounstring, " with the ", _noun2string, ", but in vain. The ", _nounstring, " grabs " "you, and gives you a blow to the head. You are dazed, " "but are brought out of it by the ", _nounstring, " ripping " "off your leg, and devouring it. He then works on your " "other leg, and then your arms. He finishes off with your" " torso, and then your head. You are extremely dead.%n"; _demerits := _demerits + 50; _die(); elif not fruit in _carrying then output "You are not carrying the ", _noun2string, ".%n"; elif not _nounstring in _loc._contents then output "What ", _nounstring, "?%n"; else output "You grab the ", _nounstring, ", and force it to eat the ", _noun2string, ". He stares at you in sheer " "amazement at your audacity, but not for long. He " "starts to choke on the ", _noun2string, " and his " "eyes bug out. He starts writhing on the ground in " "agony, and starts coughing blood. He gets a bit of " "blood on your shoes, so you step back a bit. He seems " "to be taking a while to die, so you decide to quicken " "the process. You rip off his head, and tear out his " "brain. You then eat the brain in triumph, and hurl the " "remains away.%n"; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _loc._contents <- _noun; _score := _score + 50; fi; noun "artist": if _loc ~= hallone or not _hung then output "What ", _nounstring, "?%n"; else output "You attack the artist, but he fights back, and rips " "your lungs out. This kills you.%n"; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; _demerits := _demerits + DIEPENALTY; _die(); fi; noun "rat": burn."rat"(); noun "me": output "Arrgggghhhh! With delight, I destroy you.%n"; _die(); noun ("acid", "ACID", "richard", "bailey"): output "You Bastard!! For that, you DIE!!!!%n"; _demerits := _demerits + 50; _die(); noun * : output "Why the hell should I injure that??%n"; verb (inventory, inv, inven): noun * : if _dark then output "It's too bloody dark to do that!!%n"; else _inventory(); fi; verb (build, make, invent): noun : output "OK, Edison. Build what?%n"; noun ("bridge"): if _loc ~= rockypathten then output "Why?%n"; elif rockypathten.east isnt absent then output "You already have!%n"; else output "OK. Hmmmm. Calculating force vectors here and here, " "using an alloy of such and such... There! Done!! A " "bridge now spans the chasm!%n"; rockypathten.east := rockypatheleven; rockypathten._description := ". There is a chasm, " "spanned by a bridge, to the east.%n"; fi; noun * : output "I don't have the materials!%n"; verb cover: noun : output "Sure. But ", _verbstring, " what?%n"; noun ("whore", "her"): if _count = 2 then output _verbstring, " the whore with what?%n"; elif _noun2 ~= bag then output "It is difficult to ", _verbstring, " the whore with a ", _noun2string, ".%n"; elif not _noun2 in _carrying then output "You don't have the ", _noun2string, ".%n"; elif _loc ~= boudoir then output "What whore?%n"; elif _whorebagged then output "She already has a ", _nounstring, " on her!%n"; else output "Right! There! She looks very much better!%n"; _whorebagged := true; _carrying <- bag; _carryweight := _carryweight - bag._weight; boudoir._description := ", a lavishly decorated bedroom. " "Lying on the bed is a sexy whore, with a bag over her " "head.%n" fi; noun * : output "You can't cover that!%n"; verb (screw, fuck): noun : output "I'm horny too, but ", _verbstring, " what?%n"; noun "whore": if _loc ~= boudoir then output "What ", _nounstring, "?%n"; elif _whorefucked then output "You've already ", _verbstring, "ed the ", _nounstring, ", and frightened her away!%n"; elif not _whorebagged then output "What, with a face like THAT?? No way!!%n"; else output "AAAHHHHHHH!!!!! OHH! WOW!!!!! Hey, that ain't bad!!%n" "Whups! You frightened her with your violence!!%n" "She just ran away!!%n"; boudoir._description := ", a lavishly decorated bedroom. " "There is an empty bed here.%n"; _whorefucked := true; fi; noun "you": output "What!? I don't like that!!%n%n" " ZAP!!%n%n"; _demerits := _demerits + DIEPENALTY; _die(); noun "me": output "What!? You must be desperate!!%n"; noun "off": output "I see no off here!%n%n%n%n(But I'll kill you " "anyways)%n%n%n"; _demerits := _demerits + DIEPENALTY; _die(); noun * : output "You can't GET hard enough!!%n"; verb (lift, raise): noun : output _verbstring, " what?%n"; noun "idol": if _loc ~= maintemple2 then output "What idol?%n"; elif maintemple2.down isnt absent then output "There isn't any idol here.%n"; else output "OK. Unnhhh!! This is heavy! There it goes!!%n%n" " K A - S M A S H !!!!!!!%n%n" "It breaks apart, and the eyes roll out. They are " "diamonds!! A hole in the floor, with a ladder attached " "to the side is seen.%n"; _loc._contents <+ diamond; maintemple2..down := tempbase1; maintemple2._description := ". Incredibly magnificent, " "etc., etc. There is a hole in the floor here, with " "a ladder attached to the side here.%n"; fi; noun bed: if _loc ~= boudoir then output "What bed?%n"; elif _whorefucked then output "Sure thing, O mighty poof!!! Hey!! There's a hole in " "the floor here!!%n"; _loc._contents <- _noun; boudoir._description := ", a lavishly decorated bedroom. " "There is a hole in the floor here.%n"; boudoir..down := graniteroom; _opentrap <+ _noun; else output "I can't, right now.%n"; fi; noun * : output "You can't ", _verbstring, " that now!%n"; verb (act, perform): noun * : if _loc ~= office then output "The boy stood on the burning deck,%n" "His pants were full of fire...%n%n" "Booo!! Hisssss!!! Throw the bum out!!%n"; elif _guarddead then output "Your only audience is a guard which you brutally murdered.%n" "I think that that is a bit morbid.%n"; elif not skull in _carrying then output "You really need some props before ", _verbstring, "ing.%n"; elif _appreciated then output "The guard appreciates the encore.%n"; else output "%nAlas, poor Yorick!%nI knew him well!%n" "A fellow of...%n%nHey, You're doing good! The guard " "thinks so too, and applauds enthusiastically, stepping " "away from the vault door as he does so.%n"; _appreciated := true; _score := _score + 25; if _loc._hintvalue isnt absent then _loc -- _hintvalue; fi; office._description := ", what looks like the office of " "one of the top men in the complex. There is a walk-in " "safe to the east. Nearby is a guard with an " "appreciative smile on his face.%n"; fi; verb (bow, appreciate): noun * : if _loc ~= office then output "I'm afraid my back hurts too much to do that.%n"; elif _guarddead then output "You salute your vanquished opponent.%n"; _score := _score + 5; elif _appreciated then output "You bow in appreciation"; _score := _score + _bowvalue; _bowvalue := 0; else output "You bow to the guard. He takes no notice of your " "action.%n"; fi; verb (smash, break, shatter): noun : output _verbstring, " what, you violent person?%n"; noun "window": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = rock then output "Against this ", _nounstring, ", a ", _noun2string, " is pretty useless.%n"; elif not rock in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= balcony then output "What ", _nounstring, "?%n"; elif _windowsmashed then output "You've already smashed the window, dummy!%n"; else output "SMASSHHHHHHH!!!! The rock sails through the window, " "destroying it totally. The way down the steps is " "now clear.%n"; balcony._description := ". A steep stairway leads down " "the cliff to a lake far below. Far below you, and to " "the west, a dark hole can be seen in the cliff above " "the west end of the lake. There is a path leading " "south from it.%n"; _windowsmashed := true; _carrying <- rock; _carryweight := _carryweight - rock._weight; balcony..down := stairone; fi; noun "mirror": if _loc ~= hallpastone or hallpastone.up isnt absent then output "What ", _nounstring, "?%n"; else output "CRASSHHHH!!! (tinkle, tinkle) The shards of mirror fall " "down around you.%nStrange looking mice scoot out from " "the baseboards,%nand eagerly devour the pieces. They " "then scurry back.%n"; hallpastone..up := atticone; hallpastone._description := " lit with ultra-modern " "fluorescent light fixtures. Doors lead off to the " "sides. To the north, there is a doorway through which " "shifting mists can be seen.%n"; fi; noun * : output "I do not wish to ", _verbstring, " that.%n"; verb (unbolt, unscrew): noun : output _verbstring, " what?%n"; noun "bolt": if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = wrench then output "I don't really think that a ", _noun2string, " will work.%n"; elif not wrench in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; elif _loc ~= dock then output "What ", _nounstring, "?%n"; elif _unbolted then output "You've already ", _verbstring, "ed the ", _nounstring, ".%n"; else output "OK. There! Whups, it dropped in the lake!!%n"; dock._description := ". To the east is a small boat, " "with the mooring line hanging loosely from the prow.%n"; _unbolted := true; lakeafterthree._contents <+ bolt; fi; noun * : output "You can't unbolt that.%n"; verb (throw, chuck, hurl): noun : output _verbstring, " what?%n"; noun rock: if not rock in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; elif _loc ~= balcony then output "You hurl the rock away from you.%n"; _carrying <- rock; elif _windowsmashed then output "You've already smashed the window, dummy!%n"; else output "SMASSHHHHHHH!!!! The rock sails through the window, " "destroying it totally. The way down the steps is " "now clear.%n"; balcony._description := ". A steep stairway leads down " "the cliff to a lake far below. Far below you, and to " "the west, a dark hole can be seen in the cliff above " "the west end of the lake. There is a path leading " "south from it.%n"; _windowsmashed := true; balcony..down := stairone; _carrying <- rock; _carryweight := _carryweight - _noun._weight; fi; noun ("up"): if _radioactive_time < 60 then output "Ah, ha!! Nausea is a definite symptom of radiation " "sickness!! Urrppppp!!!!!%n"; _loc._contents <+ radioactiveblech; elif _loc = wc then output "Urrpppp!! Oh, that's much better!! Thanks!!%n"; else output "You are a very gross little toady!! Urrppp!%n"; _loc._contents <+ blech; _demerits := _demerits + 10; fi; noun * : output "No.%n"; verb (vomit, puke): noun * : throw."up"(); verb (row, paddle): noun * : if _loc ~= boat then output _verbstring, " what?%n"; elif boat.west = dock then if not _unbolted then output "I can't. The mooring line is bolted to the cliff.%n"; else output "OK. After pulling hard on the oars for a while, we find " "ourselves at the east end of the lake.%n"; boat.west := _drown; boat.east := shore; dock.east := _drown; shore.west := boat; dock._description := ", which juts out into the lake.%n"; shore._description := ", a low sandy beach. There is a " "boat floating nearby to the east.%n"; boat._description := ". It is floating just west " "of the east end of the lake.%n"; fi; elif boat.east = shore then output "OK. After pulling hard on the oars for a while, " "we find ourselves back at the dock.%n"; boat.west := dock; boat.east := _drown; dock.east := boat; shore.west := _drown; dock._description := ". To the east floats a small " "rowboat.%n"; shore._description := ", a low, sandy beach at the " "east end of the lake.%n"; boat._description := ", a small rowboat floating near " "a dock.%n"; else output "You shouldn't get this output.%n"; fi; verb sail: noun * : if _loc = sub1 and submarine in _sublocone and _enginesgone = false then output "Sailing, sailing, under the " "bounding main!%nWe all live in a yellow submarine, a yellow " "submarine...%nHey! This is fun! We are moving, but I don't " "like the sound of those engines!!!%n"; _move(sub2); _sublocone <- submarine; _subloctwo <+ submarine; elif _loc = sub1 and _enginesgone = true and submarine in _sublocone then output "The engines are far too badly damaged to move.%n"; elif _loc = sub1 and submarine in _subloctwo then output "Sail WHAT?!?%n"; elif _loc = sub2 and submarine in _subloctwo then output "Sailing, sailing, under the bounding main!%nLet me take you down, cause " "I'm going...Oops! Wrong tune!%nAnyways, the engines are now " "sounding really bad!%nIt sounds like they are falling to " "pieces!!%n"; _move(sub1); _enginesgone := true; _subloctwo <- submarine; _sublocone <+ submarine; else output "Fine, fine.... but sail what?%n"; fi; verb (north, n): noun * : _move(_loc.north); verb (south, s): noun * : _move(_loc.south); verb (east, e): noun * : _move(_loc.east); verb (west, w): noun * : _move(_loc.west); verb (northeast, ne): noun * : _move(_loc.northeast); verb (southeast, se): noun * : _move(_loc.southeast); verb (northwest, nw): noun * : _move(_loc.northwest); verb (southwest, sw): noun * : _move(_loc.southwest); verb (up, u): noun * : _move(_loc.up); verb (down, d): noun * : if _loc = tempbase2 then _muddied := true; _move(_loc.down); else _move(_loc.down); fi; verb climb: noun * : _move(_loc.climb); verb enter: noun * : _move(_loc.enter); verb forward: noun * : if _loc.forward isnt absent then _move(_loc.forward); else output "Please be more specific.%n"; fi; verb backward: noun * : if _loc.backward isnt absent then _move(_loc.backward); else output "Please be more specific.%n"; fi; verb jump: noun * : if _loc.jump is absent then output "Boinggg!! Boinggg!!%nMy, you look like a fool.%n"; elif _loc = tempbase2 then _move(underpondthree); _muddied := true; else _move(_loc.jump); fi; verb flush: noun * : if _loc = wc then output "KA - WHHOOSHH!!! (gurgle, gurgle, splash!)%n" "Auuggghhh!! You've just fallen in!! (klutz!!)%n"; _move(pillar); else output _verbstring, " what, and why?%n"; fi; verb lysergicaciddiethylamide: noun * : if _loc = holeinwall then _move(pillar); else output "Nothing seems to be happening.%n"; fi; verb fly: noun * : if _loc.fly isnt absent then _move(_loc.fly); else output "Hey, I'm not a bird, stupid.%n"; fi; verb swim: noun * : if _loc.swim isnt absent then _move(_loc.swim); else output "You can't swim here!%n"; fi; verb dive: noun * : if _loc.dive isnt absent then _move(_loc.dive); else output "Why dive here?%n"; fi; verb surface: noun * : if _loc._water isnt absent then _move(_loc.surface); else output "How can you surface here?%n"; fi; verb float: noun * : if _loc.float isnt absent then _move(_loc.float); else output "What?%n"; fi; verb dig: noun * : if _loc = crossroads and shovel in _carrying and crossroads. down = pits then output "OK. There is now a deep foxhole by the side of the " "road.%n"; crossroads.down := dugout; crossroads._description := ". Many paths lead out in " "all directions. To the east there is a large concrete " "pad. To the north, a large forest. Nearby, a large " "hole dug by the side of the road. Scratched in the sand " "by the side of the road: 'nenene'.%n"; elif _loc = shore and not _shoredug then output "OK. Pushing aside the sand, which is quite easy to do, " "a hole is made, and ... Hey!! There is a welder buried " "here!%n"; _shoredug := true; _loc._contents <+ welder; else output "Nope, I'm too lazy.%n"; fi; verb (worship, adore): noun : output _verbstring, " what?%n"; noun "idol": if _loc ~= maintemple2 then output "What idol?%n"; elif maintemple2.down isnt absent then output "There is no idol here left to worship!%n"; else output "Let us get down on our knees and pray:%n%n" " Heeeeeee-WACK! Z O N K E R !! Z O N K E R !!%n" " Heeeeeee-WACK! M X R V T L !! M X R V T L !!%n%n" "Hey!! The idol smiles! It starts floating upwards, " "and shakes it's head. The eyes fly out, and land near " "you. They are seen to be diamonds!! The idol continues " "to rise out of sight revealing a hole in the floor.%n"; _loc._contents <+ diamonds; maintemple2..down := tempbase1; maintemple2._description := ". Incredibly magnificent, with statues and ornaments " "of all sorts. There is a hole in the floor here.%n"; fi; noun * : output "You would look pretty stupid ", _verbstring, "ing a ", _nounstring, "!%n"; verb (get, carry, grasp, take, pickup): noun : output "OK, but ", _verbstring, " what, you twice " "cursed ass?!?%n"; noun "inventory": if _dark then output "It's too bloody damned dark to do that!!%n"; else _inventory(); fi; noun ("fucked", "screwed", "stuffed", "off"): output "You nasty little creature.%n"; noun "lost": output "OK.%n"; _move(pits); noun ring: if _dark then output "It's too frigging dark to do that!%n"; elif _loc = pitringroom and ring in _loc._contents then if _count = 2 then output "The ", _nounstring, " is in the " "fire. You can't get it out with your bare hands, you " "realize.%n"; elif not _noun2 = tongs then output "You can't use the ", _noun2string, " to get the ", _nounstring, " out of the fire.%n"; elif not _noun2 in _carrying then output "You aren't carrying the ", _noun2string, ".%n"; else output "You pull the ", _nounstring, " out of the " "fire, and gingerly pick it up. Much to your " "surprise, the ring is already cool. You see that " "the ring is made of gold.%n"; _loc._contents <- _noun; _score := _score + 3; _carrying <+ _noun; fi elif _noun in _carrying then output "You are already carrying the ", _nounstring, ".%n"; elif _noun in _loc._contents then output "OK.%n"; _loc._contents <- _noun; _carrying <+ _noun; else output "No. You can't get the ", _nounstring, ".%n"; fi; noun * : if _dark then output "It's too frigging dark to do that!%n"; elif _noun in _carrying then output "You already have the ", _nounstring, ".%n"; elif _noun in _loc._contents and _carryweight + _noun._weight > MAXWEIGHT then output "Twit! Are you trying to " "give yourself a hernia?%n"; elif _noun in _loc._contents and _noun.weight is int then output "OK%n"; _loc._contents <- _noun; _carrying <+ _noun; _carryweight := _carryweight + _noun._weight; if _noun._value isnt absent then _score := _score + _noun._value; _noun._value := 0; fi; else output "No. You can't get the ", _nounstring, ".%n"; fi; verb (drop, leave, put, "let-go"): noun : output "You will have to tell me what to ", _verbstring, " first, you twit.%n"; noun * : if _noun in _carrying then output "OK%n"; _carryweight := _carryweight - _noun._weight; _loc._contents <+ _noun; _carrying <- _noun; else output "You aren't carrying the ", _nounstring, ".%n"; fi; verb (wash, clean): noun : output _verbstring, " what, old chap?%n"; noun (blob): if _loc._water is absent then output "I don't think I can.%n"; elif not blob in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; else output "OK. Hey! The blob is actually a pure gold nugget!%n"; _carrying <- blob; _carrying <+ gold; _score := _score + 15; dict -- "blob"; fi; noun * : output "I can't ", _verbstring, " a ", _nounstring, ".%n"; verb mts: noun * : output "Don't tell me! Let me guess!!%n" "I know! Micheal's Toad Sticking Inc., right?%n"; verb (eat, devour): noun : output _verbstring, " what, old terminal problem?%n"; noun ("shit", "cock", "piss", "vomit", "mine"): output "I don't like that.%n%n Z Z Z A P P P P !!!!!%n%n"; _score := _score -25; _die(); noun (fruit): if _noun in _carrying then output "OK. Hmmmm! Very tasty! Thank you!%n"; _carrying <- _noun; _carryweight := _carryweight - _noun._weight; else output "You have to be holding it first, fool!%n"; fi; noun "waterheater": if _loc ~= tempbase2 then output "What waterheater?%n"; elif tempbase2.east isnt absent then output "What waterheater?%n"; else output "OK. Chomp, chomp, chew. Urrppp!%nThat sugar coating " "sure makes it easier to swallow!%n"; tempbase2.east := cellar; tempbase2._description := ". Boxes of various sizes line the walls. More can " "be seen to the west. The basement continues to the " "east. There is a large, 10m diameter hole in the " "middle of the floor. A glint of light can be seen " "at the bottom.%n"; fi; noun * : output "You can't ", _verbstring, " that, you twit!%n"; verb panic: noun * : if _loc = cavernlost then output "AAAAAAAAAAAAAAAAAUUUUUUU" "UUUGGGGGGGGHHHHHHHHHHHHH!!!!!!!!!!!!%n"; _move(cavernfour); else output "AAAAAAUUUUUUUUGGGGGGGGGHHHHHHHHHHHHHH!!!!!!" "!!!%n"; fi; verb (extinguish, snuff): noun : output _verbstring, " what?%n"; noun flamethrower: if not _noun in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; else output "I don't think it is lit!%n"; fi; noun lantern: if not _noun in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; elif _lantern_timeleft > LANTERNLEFT then output "But it isn't lit!%n"; else output "Why? It will soom go out anyways!%n" fi; noun welder: if not _noun in _carrying then output "You aren't carrying the ", _nounstring, ".%n"; elif not _welderlit then output "The ", _nounstring, " isnt on!%n"; else output "OK. It is now out.%n"; _welderlit := false; welder._name := "an oxygen-acetylene welding-torch%n"; fi; noun * : output "I can't ", _verbstring, " a ", _nounstring, "!%n"; verb (light, ignite): noun : output "Sure, but ", _verbstring, " what, you old fool?%n"; noun welder: if not _noun in _carrying then output "You aren't carrying the ", _nounstring, ", you twit.%n"; elif _welderlit then output "It's already on, moron!%n"; else output "OK. The ", _nounstring, " is now merrily burning.%n"; _welderlit := true; fi; noun lantern: if _count = 2 then output _verbstring, " the ", _nounstring, " with what?%n"; elif not _noun2 = flamethrower then output "The ", _noun2string, " won't ", _verbstring, " the ", _nounstring, ", I'm afraid.%n"; elif not _noun2 in _carrying then output "You don't have the ", _noun2string, ".%n"; elif _lantern_timeleft <= 0 then output "The ", _nounstring, " is too far damaged, I'm afraid.%n"; elif _lantern_timeleft < LANTERNLEFT then output "It's already on, you stupid twit!%n"; else output "Your flamethrower shoots out a huge blast of fire," " almost singeing you bald. The lantern gets" " the worst of it, and is pretty well fried.%nHowever, " "it is lit.%n"; _dark := false; _lantern_timeleft := LANTERNLEFT; lantern._name := "a damaged gas lantern, burning " "bright.%n"; fi; noun flamethrower: if not _noun in _carrying then output "You aren't carrying the ", _nounstring, ", stupid.%n"; elif _loc._torch isnt absent then output "It is hard to light it underwater, fool.%n"; else output "The flamethrower shoots out a burst of flame, and then goes " "out.%nYou really accomplished a hell of a lot there, " "didn't you?%n"; fi; noun * : output "If you were to ", _verbstring, " the ", _nounstring, ", it would create a fire hazard. Therefore, no.%n"; verb instructions: noun * : output "%n This%n%n" " The object of this little game is to get lots of points, " "and to do interesting things, which I will let you find out " "for yourself after a little exploring. " "Throughout, whenever you encounter a ' , ignore it, it is just " "a quotation mark to set aside whatever is in them.%n" " To move around and to do things, you enter commands in " "lower case. Use commands of the form VERB, or VERB NOUN, " "or ACTION OBJECT TOOL, " "which means you can either enter a verb by itself, and that " "may work, or you may need a noun for the verb to refer to, " "or a verb, what the verb applies to, and what you have to use.%n" " Some useful verbs:%n" "'quit':gets you out of the game.%n" "'look':tells you where you are.%n" "'n','s','e','w','ne','nw','se','sw','u','d','climb','jump',etc.:%n" " moves you in the appropriate direction.(long forms of these " " verbs may also be used.)%n" "'get':lets you carry an object.%n" "'drop':lets you get rid of an object.%n" "'hint':gives you a hint, if I think you might need one.%n" " And, of course, lots and lots of others that you have to%n" "figure out for yourself.%n%n"; start: _appreciated := false; _armed := false; _badmove := true; _badgeon := false; _breathheld := false; _bowvalue := 10; _carrying := emptylist; _carsdead := false; _carryweight := 0; _counter := 0; _comb1 := _combinations.(? % 200); _comb2 := _combinations.(? % 200); _comb3 := _combinations.(? % 200); _comb4 := _combinations.(? % 200); _comb_w1 := _combinations.(? % 200); _comb_w2 := _combinations.(? % 200); _comb_w3 := _combinations.(? % 200); _comb_w4 := _combinations.(? % 200); _demerits := 0; _dogdead := false; _detonated := false; _dark := false; _enginesgone := false; _fudgeout := emptylist; _glop := 0; _getout := false; _guarddead := false; _here := emptylist; _hung := false; _ignore := _._ignorelist; _holding := emptylist; _lantern_timeleft := 696969; _loc := pillar; _moves := 0; _muddied := false; _opentrap := emptylist; _placed := false; _pulledblue := false; _pulledgreen := false; _pulledred := false; _pulledtimes := 0; _pulledright := false; _riddlenumber := ? % 6; _ringon := false; _riddleme := _riddles._riddlenumber; _riddleyes := _riddles_answer._riddlenumber; _radioactive_time := 696969; _score := 0; _shoredug := false; _slashed := emptylist; _slime := false; _screwed := emptylist; _sublocone := emptylist; _subloctwo := emptylist; _shoeson := false; _there := emptylist; _torchon := false; _tried := 0; _unbolted := emptylist; _waresafeopen := false; _welderlit := false; _wearing := emptylist; _windowsmashed := false; _whorebagged := false; _whorefucked := false; output "Hi!! Welcome to %n%n" " TTTTTT HH HH IIIIII SSSSSS %n" " TT HH HH II S %n" " TT HHHHHH II SSS %n" " TT HHHHHH II SSS %n" " TT HH HH II S %n" " TT HH HH IIIIII SSSSSS%n%n" " I won't keep you long, " "just long enough to tell you that instructions may be had " "by typing in 'instructions' and hints by typing in 'hint' or " "'help'. 'score' tells you how you are doing. " "The instructions and score are free, but the hints will cost " "you LOTS of points, so...%n USE YOUR BRAIN!!!!!!!!!!!%n%n"; _see(false); while not _getout do output newline; _input := input; if _input is absent then _getout := true; elif _input then _nounstring := nil; _count := 0; _moves := _moves +1; for _word in _input do if _count = 0 then _verb := dict._word; _verbstring := _word; elif _count = 1 then _nounstring := _word; elif _count = 2 then _noun2string := _word; elif _count = 3 then _noun3string := _word; fi; if not _word in _ignore then _count := _count + 1; fi; if (_count = 1 and _verbstring = "put" and _nounstring = "on") then _verb := wear; _verbstring := "put on"; elif (_count = 1 and _verbstring = "take" and _nounstring = "off") then _verb := remove; _verbstring := "take off"; elif (_count = 1 and _verbstring = "let" and _nounstring= "go") then _verb := drop; _verbstring := "let go"; elif (_count = 2 and _nounstring = "green" and _noun2string = "lever") then _noun := "greenlever"; _nounstring := "green lever"; elif (_count = 2 and _nounstring = "red" and _noun2string = "lever") then _noun := "redlever"; _nounstring := "red lever"; elif (_count = 2 and _nounstring = "blue" and _noun2string = "lever") then _noun := "bluelever"; _nounstring := "blue lever"; elif (_count = 2 and _nounstring = "black" and _noun2string = "lever") then _noun := "blacklever"; _nounstring := "black lever"; elif (_count = 2 and _nounstring = "wood" and _noun2string = "door") then _noun := "woodendoor"; _nounstring := "wood door"; elif (_count = 2 and _nounstring = "wooden" and _noun2string = "door") then _noun := "woodendoor"; _nounstring := "wooden door"; elif (_count = 2 and _nounstring = "metal" and _noun2string = "door") then _noun := "metaldoor"; _nounstring := "metal door"; elif (_count = 2 and _nounstring = "fabric" and _noun2string = "door") then _noun := "fabricdoor"; _nounstring := "fabric door"; elif (_count = 2 and _nounstring = "cloth" and _noun2string = "door") then _noun := "fabricdoor"; _nounstring := "cloth door"; elif (_count = 2 and _nounstring = "key" and _noun2string = "ring") then _noun := "keys"; _nounstring := "key ring"; elif (_count = 2 and _nounstring = "erotic" and _noun2string = "painting") then _noun := "painting"; _nounstring := "erotic painting"; fi; od; if _count = 0 then output "Say something intelligent, please! (For a change!)%n"; else _noun := dict._nounstring; _noun2 := dict._noun2string; _noun3 := dict._noun3string; if _verb is absent then output if ? > 7000 then "I canna' understand ye, little one.%n"; else "You don't make much sense, you know.%n"; fi elif _verb.true isnt proc then output "That don't appear to be a verb.%n"; else if _verb._nounstring is proc then _verb._nounstring(); elif _verb._noun is proc then _verb._noun(); else _verb.true(); fi; _lantern_timeleft := _lantern_timeleft - 1; _radioactive_time := _radioactive_time - 1; if _lantern_timeleft = 0 then output "Oh Oh!! Your lantern sustained too much " "damage.%nIt just went out.%n"; lantern._name := "a damaged gas lantern, " "which will burn no more."; if _loc = underpillar or _loc = tunnel then _dark := true; output "Holy hell, It's dark!!%n" "I can't see a goddamned thing!!%n"; fi; fi; if _radioactive_time <= 0 then output "You have died of a radiation overdose.%n"; _getout := true; fi; fi; fi; for _word in _input do _input <- _word; od; fi; od; _net := _score - _demerits; output "You finished with ", _score, " points. You also buggered things up just enough to get ", _demerits, " demerits. This " "means that you have a net score of ", _net, ", out of a possible maximum of ", MAXISCORE, " points. Ah, well.%nThis is God, signing off.%n";