/*** 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);
}