/*** FUNNY TRANSITION ROUTINES ***/ exitg = Proc() { "Oh dear, you seem to have gotten yourself killed.\n"; skore(); ratng(); ratnx(); If (!$ME.debug) { Die(); } } em3 = Proc() { If (!paper.signed) { cg(); Return 0; } $move($ME, irm1); } ei8 = Proc() { If ($loc(spices) == $ME) { "The savory blend of spices and human wakes up the sleeping ", "crocodiles who decide to have you for breakfast.\n"; exitg(); } Else If ($loc(rupees) == $ME) { "The weight of the coins pulls you underwater and you eventually ", "drown.\n"; exitg(); } Else { "You manage to get across the river, just as the crocodiles ", "begin to stir.\n"; $move($ME, irm9); } } wi12 = Proc() { If (!statue.tlakst) { cg(); Return 0; } $move($ME, irm14); } ui16 = Proc() { If (!rope.ropstf) { cg(); Return 0; } "You scramble up the rope and get to the ledge.\n"; $move($ME, irm17); } ui17 = Proc() { "Are you a rock climber? \n"; If (!$yorn()) { "Then you better not try it.\n"; Return 0; } "That climb is rated 5.11. Do you still want to try it?\n"; If (!$yorn()) { "Wise move.\n"; Return 0; } "Half way up, you fall off a 1/32 inch wide ledge and ", "plummet to your death.\n"; exitg(); } di19 = Proc() { "You magically get transported to the corner of Westwood and Broxton, ", "where you are forced to spend the rest of eternity surrounded by ", "Hari-Krishna freaks. (That'll teach you not to believe legends.)\n"; $spec(QUIT); } ei20 = Proc() { If (!monkey.fedmky) { cg(); Return 0; } $move($ME, irm21); } wi21 = Proc() { If ($loc(peel) == irm20) { "As you leave the temple, you slip on a banana peel and break ", "your neck.\n"; exitg(); } $move($ME, irm20); } di22 = Proc() { If ($loc(cobra) == irm22) { "The cobra takes a bite at your unprotected leg and injects an ", "unhealthy dose of neurotoxin. You start to lose your senses, your ", "cognitive abilities, an yer rekcogiskdfsdk.\n"; exitg(); } $move($ME, irm23); } sm5 = Proc() { If (!paper.signed) { "You bumped into the grate.\n"; Return 0; } $move($ME, prm1); } dp2 = Proc() { If (rope.rtied == 0) { "It is too dangerous to climb down without a rope.\n"; Return 0; } If (($loc(lamp) == $ME) & lamp.LIGHT) { "Half-way down the rope, the carbide lamp burns through the ", "rope above you and you plummet to your death.\n"; exitg(); } "You climb down the rope without any problems.\n"; $move($ME, prm3); } ep5 = Proc() { If ($loc(spear) == $ME) { "You can't fit the spear you are carrying through that crack.\n"; $exit(1); } $move($ME, prm6); } ep8 = Proc() { "You fall off the cliff and plummet several hundred feet to your ", "death.\n"; exitg(); } dp6 = Proc() { If (!smilo.stond) { "As soon as you reach the bottom of the pit, the sabre-tooth ", "tiger tears you to shreads.\n"; exitg(); } $move($ME, prm7); } ep10 = Proc() { "You fall into the lake, which actually turns out to be a tar-pit ", "covered with a thin layer of rain water. You eventually sink and ", "get fossilized.\n"; exitg(); } ep11 = Proc() { If (!feet.wiped) { $move($ME, prm10); $exit(1); } "As you walk down the slab, your feet slip and you tumble off the slab.\n"; ep10(); } sp12 = Proc() { "You find your feet to be quite slippery as you walk.\n"; feet.wiped = 1; $move($ME, prm11); } sp14 = Proc() { If (!mammoth.blokd) { "The mammoth keeps you from going that way.\n"; $exit(1); } $move($ME, prm15); } np17 = Proc() { If ((spear.tooky == 1) & (spear.abrad == 0)) { "The rubble keeps you from going in that direction.\n"; $exit(1); } $move($ME, prm18); } np19 = Proc() { If (!bear.hitbr) { "The bear keeps you from going that direction.\n"; $exit(1); } $move($ME, prm20); } wp22 = Proc() { If ($loc(spear) == $ME) { "The spear that you were carrying lodges in the Tyrannosaurus's ", "mouth.\n"; $move(spear, prm23); $move($ME, prm23); } If ($loc(spear) == prm23) { $move($ME, prm23); } If (($loc(spear) != $ME) & ($loc(spear) != prm23)) { "The Tyrannosaurus crushes you in his jaws then swallows you.\n"; exitg(); } } dp23 = Proc() { "You slide down the gullet of the Tyrannosaurus and get ", "digested alive.\n"; exitg(); } dm6 = Proc() { "After wandering around in the forest for a while, you eventually ", "find your way out.\n"; $move($ME, mrm1); } darkq = Proc() { If (!Lit($loc($ME))) { If ($arg(0)) { Return 1; } "It is too dark to see anything in here.\n"; $exit(0); } Return 0; } darkt = Proc() { If (!Lit($loc($ME))) { If ($pct(50)) { "While stumbling around in the darkness, you trip and impale ", "yourself on a stalagmite.\n"; exitg(); } } } onlmp = Proc() { If ($loc(lamp) != $ME) { "You don't have the lamp with you.\n"; $exit(1); } If (!lamp.LIGHT) { "A blue flame now flickers out of the lantern.\n"; lamp.LIGHT = 1; $exit(1); } } /*** TRANSITIONS ***/ mrm1(ACTION) = Proc() { $hit($ME, mrm6, mrm2, mrm6, mrm6, 0, 0, mrm2, 0, 0, 0); $miss( 0, 0, 0, 0, cg, cg, 0, dumdir, 0, 0); } mrm2(ACTION) = Proc() { $hit($ME, mrm1, mrm4, mrm3, mrm4, 0, mrm5, 0, 0, 0, 0); $miss( 0, 0, 0, 0, cg, 0, dumdir, dumdir, 0, 0); } mrm3(ACTION) = Proc() { $hit($ME, 0, 0, 0, mrm2, 0, 0, 0, 0, 0, 0); $miss( cg, cg, em3, 0, cg, cg, dumdir, dumdir, 0, 0); } mrm4(ACTION) = Proc() { $hit($ME, mrm2, 0, 0, 0, 0, 0, 0, mrm2, 0, 0); $miss( 0, cg, cg, cg, cg, cg, cg, 0, 0, 0); } mrm5(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, mrm2, 0, 0, 0, 0, 0); $miss( cg, sm5, cg, cg, 0, cg, dumdir, dumdir, 0, 0); } mrm6(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss( dm6, dm6, dm6, dm6, cg, cg, dumdir, dm6, 0, 0); } irm1(ACTION) = Proc() { $hit($ME, 0, 0, 0, mrm3, 0, irm2, 0, 0, 0, 0); $miss( cg, cg, cg, 0, cg, 0, dumdir, dumdir, 0, 0); } irm2(ACTION) = Proc() { $hit($ME, 0, 0, irm10, irm3, irm1, 0, 0, 0, 0, 0); $miss( cg, cg, 0, 0, 0, cg, dumdir, dumdir, 0, 0); } irm3(ACTION) = Proc() { $hit($ME, irm4, 0, irm2, 0, 0, 0, 0, 0, 0, 0); $miss( 0, cg, 0, cg, cg, cg, dumdir, dumdir, 0, 0); } irm4(ACTION) = Proc() { $hit($ME, 0, irm3, 0, 0, 0, irm5, 0, irm3, 0, 0); $miss( cg, 0, cg, cg, cg, 0, dumdir, 0, 0, 0); } irm5(ACTION) = Proc() { $hit($ME, irm6, irm7, irm8, 0, 0, 0, 0, 0, 0, 0); $miss( 0, 0, 0, cg, tohigh, cg, dumdir, dumdir, 0, 0); } irm6(ACTION) = Proc() { $hit($ME, 0, irm5, 0, irm7, 0, 0, 0, 0, 0, 0); $miss( tosml, 0, cg, 0, cg, cg, dumdir, dumdir, 0, 0); } irm7(ACTION) = Proc() { $hit($ME, irm5, 0, irm6, 0, 0, 0, 0, 0, 0, 0); $miss( 0, cg, 0, cg, cg, cg, dumdir, dumdir, 0, 0); } irm8(ACTION) = Proc() { $hit($ME, 0, 0, 0, irm5, 0, 0, 0, irm5, 0, 0); $miss( cg, cg, ei8, 0, cg, cg, dumdir, 0, 0, 0); } irm9(ACTION) = Proc() { $hit($ME, 0, 0, 0, irm8, irm10, 0, 0, irm10, 0, 0); $miss( cg, cg, cg, 0, 0, cg, dumdir, 0, 0, 0); } irm10(ACTION) = Proc() { $hit($ME, 0, irm11, irm22, irm2, 0, irm9, 0, 0, 0, 0); $miss( cg, 0, 0, 0, cg, 0, dumdir, dumdir, 0, 0); } irm11(ACTION) = Proc() { $hit($ME, irm10, irm12, 0, irm13, 0, 0, 0, 0, 0, 0); $miss( 0, 0, cg, 0, cg, cg, cg, cg, 0, 0); } irm12(ACTION) = Proc() { $hit($ME, irm11, 0, irm15, 0, 0, 0, 0, 0, 0, 0); $miss( 0, cg, 0, wi12, cg, cg, dumdir, dumdir, 0, 0); } irm13(ACTION) = Proc() { $hit($ME, 0, irm15, irm11, 0, 0, 0, 0, 0, 0, 0); $miss( cg, 0, 0, cg, cg, cg, dumdir, dumdir, 0, 0); } irm14(ACTION) = Proc() { $hit($ME, 0, 0, irm12, 0, 0, 0, 0, irm12, 0, 0); $miss(cg, cg, 0, cg, cg, cg, dumdir, 0, 0, 0); } irm15(ACTION) = Proc() { $hit($ME, irm13, 0, irm16, irm12, 0, 0, 0, 0, 0, 0); $miss(0, cg, 0, 0, cg, cg, dumdir, dumdir, 0, 0); } irm16(ACTION) = Proc() { $hit($ME, irm22, 0, irm18, irm15, 0, 0, 0, 0, 0, 0); $miss(0, cg, 0, 0, ui16, cg, dumdir, dumdir, 0, 0); } irm17(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, 0, irm16, 0, 0, 0, 0); $miss(cg, cg, cg, cg, ui17, 0, dumdir, dumdir, 0, 0); } irm18(ACTION) = Proc() { $hit($ME, 0, irm19, irm20, irm16, 0, 0, 0, 0, 0, 0); $miss(cg, 0, 0, 0, cg, cg, dumdir, dumdir, 0, 0); } irm19(ACTION) = Proc() { $hit($ME, irm18, 0, 0, 0, 0, 0, 0, irm18, 0, 0); $miss(0, cg, cg, tosml, cg, di19, dumdir, 0, 0, 0); } irm20(ACTION) = Proc() { $hit($ME, 0, 0, 0, irm18, 0, 0, 0, 0, 0, 0); $miss(cg, cg, ei20, 0, cg, cg, dumdir, dumdir, 0, 0); } irm21(ACTION) = Proc() { $miss(cg, cg, cg, wi21, cg, cg, dumdir, wi21, 0, 0); } irm22(ACTION) = Proc() { $hit($ME, 0, irm16, 0, irm10, 0, 0, 0, 0, 0, 0); $miss(cg, 0, cg, 0, cg, di22, di22, cg, 0, 0); } irm23(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, irm22, 0, 0, irm22, 0, 0); $miss(cg, cg, cg, cg, 0, cg, dumdir, 0, 0, 0); } prm1(ACTION) = Proc() { darkt(); $hit($ME, mrm5, prm2, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, 0, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm2(ACTION) = Proc() { $hit($ME, prm1, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, cg, cg, cg, cg, dp2, dumdir, dumdir, 0, 0); } prm3(ACTION) = Proc() { $hit($ME, 0, 0, 0, prm4, prm2, 0, 0, 0, 0, 0); $miss(cg, cg, cg, 0, 0, cg, dumdir, dumdir, 0, 0); } prm4(ACTION) = Proc() { $hit($ME, 0, prm5, prm3, prm9, 0, 0, prm5, 0, 0, 0); $miss(cg, 0, 0, 0, cg, cg, 0, dumdir, 0, 0); } prm5(ACTION) = Proc() { darkt(); $hit($ME, prm4, 0, 0, 0, 0, 0, 0, prm4, 0, 0); $miss(0, cg, ep5, cg, cg, cg, dumdir, 0, 0, 0); } prm6(ACTION) = Proc() { darkt(); $hit($ME, 0, 0, 0, prm5, 0, 0, 0, 0, 0, 0); $miss(cg, cg, cg, 0, cg, dp6, dumdir, dumdir, 0, 0); } prm7(ACTION) = Proc() { darkt(); $hit($ME, 0, prm8, 0, 0, prm6, 0, 0, 0, 0, 0); $miss(cg, 0, cg, cg, 0, cg, dumdir, dumdir, 0, 0); } prm8(ACTION) = Proc() { darkt(); $hit($ME, prm7, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, cg, ep8, cg, cg, cg, dumdir, dumdir, 0, 0); } prm9(ACTION) = Proc() { $hit($ME, prm10, 0, prm4, prm13, 0, 0, 0, 0, 0, 0); $miss(0, cg, 0, 0, cg, cg, dumdir, dumdir, 0, 0); } prm10(ACTION) = Proc() { $hit($ME, 0, prm9, 0, prm11, prm11, 0, 0, 0, 0, 0); $miss(cg, 0, ep10, 0, 0, cg, dumdir, dumdir, 0, 0); } prm11(ACTION) = Proc() { $hit($ME, prm12, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, cg, ep11, cg, cg, ep11, dumdir, dumdir, 0, 0); } prm12(ACTION) = Proc() { $miss(cg, sp12, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm13(ACTION) = Proc() { $hit($ME, 0, prm14, prm9, prm16, 0, 0, 0, 0, 0, 0); $miss(cg, 0, 0, 0, cg, cg, dumdir, dumdir, 0, 0); } prm14(ACTION) = Proc() { $hit($ME, prm13, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, sp14, tosml, cg, cg, cg, dumdir, dumdir, 0, 0); } prm15(ACTION) = Proc() { $hit($ME, prm14, 0, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, cg, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm16(ACTION) = Proc() { $hit($ME, prm17, 0, prm13, 0, 0, prm21, 0, 0, 0, 0); $miss(0, cg, 0, cg, cg, 0, dumdir, dumdir, 0, 0); } prm17(ACTION) = Proc() { $hit($ME, 0, prm16, 0, 0, 0, 0, 0, 0, 0, 0); $miss(np17, 0, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm18(ACTION) = Proc() { $hit($ME, prm19, prm17, 0, 0, 0, 0, 0, 0, 0, 0); $miss(0, 0, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm19(ACTION) = Proc() { $hit($ME, 0, prm18, 0, 0, 0, 0, 0, 0, 0, 0); $miss(np19, 0, cg, cg, cg, cg, dumdir, dumdir, 0, 0); } prm20(ACTION) = Proc() { $hit($ME, 0, prm19, 0, 0, 0, 0, 0, prm19, 0, 0); $miss(cg, 0, cg, cg, cg, cg, dumdir, 0, 0, 0); } prm21(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, prm16, prm22, 0, 0, 0, 0); $miss(cg, cg, cg, cg, 0, 0, dumdir, dumdir, 0, 0); } prm22(ACTION) = Proc() { $hit($ME, 0, 0, 0, 0, prm21, 0, 0, 0, 0, 0); $miss(cg, cg, cg, wp22, 0, cg, dumdir, dumdir, 0, 0); } prm23(ACTION) = Proc() { $hit($ME, 0, 0, prm22, 0, 0, 0, 0, prm22, 0, 0); $miss(cg, cg, 0, cg, cg, dp23, dumdir, 0, 0, 0); }