home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / EFFO / forum3.lzh / SAMPLES / AARD / objrouts.adl < prev    next >
Text File  |  1987-09-25  |  17KB  |  733 lines

  1. {*** FUNNY OBJECT ROUTINES ***}
  2.  
  3. paper(ACTION) =
  4.     (IF ($eq ($verb) sign) THEN
  5.     (IF ($prop paper signed) THEN
  6.         ($say "You already signed it.\n")
  7.         ($exit 1)
  8.     )
  9.     (IF ($ne ($loc pen) .ME) THEN
  10.         ($say "You don't have anything to write with.\n")
  11.         ($exit 1)
  12.     )
  13.     (IF ($ne ($loc paper) .ME) THEN
  14.         ($say "You don't have the release with you.\n")
  15.         ($exit 1)
  16.     )
  17.     ($setp paper signed 1)
  18.     ($move grate .ALL)
  19.     (IF ($eq ($loc .ME) mrm3) THEN
  20.         ($say 
  21. "In a blinding flash of light, a stone archway appears in the east wall!\n"
  22.         )
  23.      ELSEIF ($eq ($loc .ME) mrm5) THEN
  24.         ($say "The grate magically disappears into thin air.\n")
  25.         ($exit 1)
  26.      ELSE
  27.         ($say "You hear strange noises in the nearby rooms.\n")
  28.     )
  29.     ($exit 1)
  30.      ELSEIF ($eq ($verb) read) THEN
  31.     (IF ($ne ($loc paper) .ME) THEN
  32.         ($say "You don't have the paper with you.\n")
  33.      ELSE
  34.         ($say
  35. "                   THIS CONTRACT LIMITS OUR LIABILITY
  36.                                 READ IT
  37.  
  38. I, the undersigned, will not hold the AARDVARK, the UCLA Computer Sciences
  39. Department, the UCLA Computer Club, Bell Labs, or the Digital Equipment
  40. Corporation responsible for any injuries or deaths due to my executing
  41. this program.\n"
  42.         )
  43.         ($setp paper readl 1)
  44.     )
  45.     ($exit 1)
  46.     )
  47. ;
  48.  
  49.  
  50. spices(ACTION) =
  51.     (IF ($and ($eq ($verb) throw) ($eq ($loc .ME) irm8)) THEN
  52.     ($say "The bag of spices lands on the other side of the river.\n")
  53.     ($move spices irm9)
  54.     ($exit 1)
  55.      ELSEIF ($eq ($verb) eat) THEN
  56.     ($say "Munch, Munch Munch.  It needed a little more salt.\n")
  57.     ($move spices .ALL)
  58.     ($exit 1)
  59.      ELSEIF ($and ($eq ($verb) throw) ($eq ($loc .ME) irm9)) THEN
  60.     ($say
  61. "The bag of spices gets intercepted by one of the
  62. crocodiles, who promptly swallows it.\n"
  63.     )
  64.     ($move spices .ALL) 
  65.     ($exit 1)
  66.     )
  67. ;
  68.  
  69.  
  70. rupees(ACTION) =
  71.     (IF ($and ($eq ($verb) throw)
  72.           ($or ($eq ($loc .ME) irm8) ($eq ($loc .ME) irm9)))
  73.      THEN
  74.     ($say
  75. "The bag is too heavy to throw across the river.  It lands in the middle
  76. of the river and sinks to the bottom.\n"
  77.     )
  78.     ($move rupees .ALL)
  79.     ($exit 1)
  80.     )
  81. ;
  82.  
  83.  
  84. coconut(ACTION) =
  85.     (IF ($and ($eq ($loc .ME) irm19) ($eq ($verb) drop)) THEN
  86.     (IF ($not ($prop rupees wellbt)) THEN
  87.         ($say "The water in the well rises.\n")
  88.      ELSE
  89.         ($say
  90. "The water level in the well slowly rises.
  91. Magically floating on the water is a bag of rupees.\n"
  92.         )
  93.         ($setp rupees wellbt 0)
  94.         ($move rupees irm19)
  95.     )
  96.      ELSEIF ($and ($eq ($verb) eat) ($eq ($loc coconut) .ME)) THEN
  97.     ($say "The coconut is too large for you to consume.\n")
  98.     ($exit 1)
  99.     )
  100. ;
  101.  
  102.  
  103. clarinet(ACTION) =
  104.     (IF ($and ($eq ($verb) play) ($eq ($loc clarinet) .ME)) THEN
  105.     (IF ($and ($eq ($loc .ME) irm22) ($eq ($loc cobra) irm22)) THEN
  106.         ($say
  107. "Your clarinet playing sounds so poor that the cobra
  108. slithers off in terror.\n"
  109.         )
  110.         ($move cobra .ALL)
  111.         ($exit 1)
  112.      ELSEIF ($and ($eq ($loc .ME) irm16) ($eq ($loc rope) irm16)) THEN
  113.         (IF ($eq ($prop rope ropstf) 0) THEN
  114.         ($say "The rope magically extends itself up into the air.\n")
  115.         ($setp rope ropstf 1)
  116.         ($exit 1)
  117.         )
  118.     )
  119.     ($say "Benny Goodman you ain't.\n")
  120.     ($exit 1)
  121.     )
  122. ;
  123.  
  124.  
  125. rope(ACTION) =
  126.     (IF ($and ($prop rope ropstf) ($eq ($verb) take)) THEN
  127.     ($setp rope ropstf 0)
  128.     ($return 0)
  129.      ELSEIF ($or ($eq ($loc .ME) prm2) ($eq ($loc .ME) prm3)) THEN
  130.     (IF ($prop rope rtied) THEN
  131.         (IF ($eq ($verb) take) THEN
  132.         ($say "You have to untie the rope first.\n")
  133.         ($setg Skip TRUE)
  134.          ELSEIF ($eq ($verb) tie) THEN
  135.         ($say "It's already tied, turkey.\n")
  136.         ($exit 1)
  137.          ELSEIF ($eq ($verb) untie) THEN
  138.         (IF ($eq ($loc .ME) prm2) THEN
  139.             ($move rope .ME)
  140.             ($setp rope rtied 0)
  141.             ($setp rope LDESC rldesc)
  142.             ($setp rope SDESC rsdesc)
  143.             ($say "You untie the rope and coil it up.\n")
  144.          ELSEIF ($eq ($loc .ME) prm3) THEN
  145.             ($say "It's tied down at the other end.\n")
  146.         )
  147.         ($exit 1)
  148.         )
  149.      ELSE
  150.         (IF ($eq ($verb) tie) THEN
  151.         (IF ($eq ($loc .ME) prm2) THEN
  152.             ($say
  153. "You tie one end of the rope around the pole; the other
  154. end dangles down into the canyon.\n"
  155.             )
  156.             ($move rope prm2)
  157.             ($setp rope rtied 1)
  158.             ($setp rope LDESC 0)
  159.             ($setp rope SDESC 0)
  160.             ($exit 1)
  161.         )
  162.         ($say "I see nothing to which to tie it.\n")
  163.         ($exit 1)
  164.          ELSEIF ($eq ($verb) untie) THEN
  165.         ($say "It's already untied.\n")
  166.         )
  167.     )
  168.     )
  169. ;
  170.  
  171.  
  172. river(ACTION) =
  173.     (IF ($and ($ne ($loc .ME) irm8) ($ne ($loc .ME) irm9)) THEN
  174.     ($say "You see no river here.\n")
  175.     ($exit 1)
  176.      ELSEIF ($eq ($verb) take) THEN
  177.     ($say "You can't do that to the river!\n")
  178.     ($setg Skip TRUE)
  179.     )
  180. ;
  181.  
  182.  
  183. cobra(ACTION) =
  184.     (IF ($and ($eq ($verb) take) ($eq ($loc .ME) ($loc cobra))) THEN
  185.     ($say "Taking the cobra would be a poor idea.\n")
  186.     ($setg Skip TRUE)
  187.     )
  188. ;
  189.  
  190.  
  191. crocodile(ACTION) =
  192.     (IF ($eq ($verb) take) THEN
  193.     ($say "I can't get to any crocodiles from here.\n")
  194.     ($setg Skip TRUE)
  195.     )
  196. ;
  197.  
  198.  
  199. cmara =
  200.     (IF ($eq ($verb) take) THEN
  201.     ($say "The statue is too heavy for you to carry.\n")
  202.     ($setg Skip TRUE)
  203.     ($return TRUE)
  204.     )
  205.     ($return FALSE)
  206. ;
  207.  
  208.  
  209. claks =
  210.     (IF ($and ($or ($eq ($verb) take) ($eq ($verb) touch))
  211.           ($eq ($prop statue tlakst) 0))
  212.      THEN
  213.     ($say
  214. "The statue slides away very easily, revealing a secret passage.\n"
  215.     )
  216.     ($setp statue tlakst 1)
  217.     ($setg Skip TRUE)
  218.     ($return TRUE)
  219.     )
  220.     ($return FALSE)
  221. ;
  222.  
  223.  
  224. mara(ACTION) =
  225.     (IF ($eq ($loc .ME) irm10) THEN
  226.     (cmara)
  227.     )
  228. ;
  229.  
  230.  
  231. vishnu(ACTION) =
  232.     (IF ($eq ($loc .ME) irm11) THEN
  233.     (cmara)
  234.     )
  235. ;
  236.  
  237.  
  238. lakshmi(ACTION) =
  239.     (IF ($eq ($loc .ME) irm12) THEN
  240.     (claks)
  241.     )
  242. ;
  243.  
  244.  
  245. statue(ACTION) =
  246.     (IF ($or ($eq ($loc .ME) irm10) ($eq ($loc .ME) irm11)) THEN
  247.     (IF ($not (cmara)) THEN
  248.         ($say "That won't accomplish anything.\n")
  249.         ($exit 1)
  250.     )
  251.      ELSEIF ($eq ($loc .ME) irm12) THEN
  252.     (IF ($not (claks)) THEN
  253.         ($say "I don't see how you can do that to a statue.\n")
  254.         ($exit 1)
  255.     )
  256.     )
  257. ;
  258.  
  259.  
  260. banana(ACTION) =
  261.     (IF ($eq ($loc banana) .ME) THEN
  262.     (IF ($eq ($verb) eat) THEN
  263.         ($say "You eat the banana, peel and all.\n")
  264.         ($move banana .ALL)
  265.         ($exit 1)
  266.     )
  267.     )
  268.     (IF ($eq ($loc .ME) irm20) THEN
  269.     (IF ($eq ($verb) drop) THEN
  270.         ($say
  271. "The monkey picks up the banana, eats it, and discards
  272. the banana-peel.  As soon as the monkey finishes eating
  273. the banana, a bolt of lighting hits the stone slab and 
  274. cracks it open.\n"
  275.         )
  276.         ($setp monkey fedmky 1)
  277.         ($move banana .ALL)
  278.         ($move peel irm20)
  279.         ($setg Skip TRUE)
  280.     )
  281.     )
  282. ;
  283.  
  284.  
  285. horn(ACTION) =
  286.     (IF ($prop rhino cutflg) THEN
  287.     ($return 0)
  288.      ELSEIF ($eq ($loc .ME) irm13) THEN
  289.     (IF ($eq ($verb) take) THEN
  290.         ($say "The horn is still attached to the rhino!\n")
  291.         ($setg Skip TRUE)
  292.      ELSEIF ($eq ($verb) cut) THEN
  293.         (IF ($ne ($loc saw) .ME) THEN
  294.         ($say "You don't have something to cut the horn with.\n")
  295.         ($exit 1)
  296.          ELSEIF ($prop rhino earplg) THEN
  297.         ($say "You cut the horn off without waking up the rhino.\n")
  298.         ($setp rhino cutflg 1)
  299.         ($setp horn NOTAKE FALSE)
  300.         ($exit 1)
  301.          ELSE
  302.         ($say
  303. "The noise of the sawing wakes up the rhinoceros who
  304. tramples you to death because you disturbed his beauty sleep.\n"
  305.         )
  306.         (exitg)
  307.         )
  308.     )
  309.     )
  310. ;
  311.  
  312.  
  313. lattice(ACTION) =
  314.     (IF ($eq ($loc .ME) irm13) THEN
  315.     (IF ($eq ($verb) take) THEN
  316.         (IF ($prop rhino earplg) THEN
  317.         ($say
  318. "You successfully take the lattice without waking the
  319. rhino.  Unfortunately, the lattice was the structure which supported the roof
  320. of the room, and the ceiling comes crashing down upon you and breaks every 
  321. bone in your body.\n"
  322.         )
  323.          ELSE
  324.         ($say
  325. "As you take the lattice, a large part of the bamboo
  326. falls down.  The noise caused by the falling bamboo scares the sleeping
  327. rhinoceros who tramples you in his panicked exit from the room.\n"
  328.         )
  329.         )
  330.     )
  331.     (exitg)
  332.     )
  333. ;
  334.  
  335.  
  336. monkey(ACTION) =
  337.     (IF ($eq ($loc .ME) irm20) THEN
  338.     (IF ($eq ($verb) feed) THEN
  339.         (IF ($eq ($loc banana) .ME) THEN
  340.         ($say
  341. "The monkey takes your banana, peels it, eats it,
  342. and throws away the banana peel.  As soon as he finishes eating
  343. the banana, there is a rumble from the depths of the earth and 
  344. a crack appears in the stone slab.\n"
  345.         )
  346.         ($setp monkey fedmky 1)
  347.         ($move banana .ALL)
  348.         ($move peel irm20)
  349.         ($exit 1)
  350.         )
  351.     )
  352.     )
  353. ;
  354.  
  355.  
  356. cotton(ACTION) =
  357.     (IF ($eq ($loc .ME) irm13) THEN
  358.     (IF ($and ($eq ($verb) drop) ($eq ($iobj) ears)) THEN
  359.         ($say "You stick the wads of cotton into the rhino's ears.\n")
  360.         ($move cotton .ALL)
  361.         ($setp rhino earplg 1)
  362.         ($setg Skip TRUE)
  363.         ($return 0)
  364.     )
  365.     (IF ($eq ($loc cotton) .ALL) THEN
  366.         (IF ($eq ($loc .ME) irm13) THEN
  367.         (IF ($eq ($verb) take) THEN
  368.             ($setp rhino earplg 0)
  369.         )
  370.         )
  371.     )
  372.     )
  373. ;
  374.  
  375.  
  376. pole(ACTION) =
  377.     (IF ($and ($eq ($loc .ME) prm2) ($eq ($verb) take)) THEN
  378.     ($say "The pole is firmly cemented into the ground.\n")
  379.     ($setg Skip TRUE)
  380.     )
  381. ;
  382.  
  383.  
  384. lamp(ACTION) =
  385.     (IF ($eq ($verb) light) THEN
  386.     (onlmp)
  387.     ($exit 1)
  388.      ELSEIF ($eq ($verb) douse) THEN
  389.     (IF ($not ($prop lamp LIGHT)) THEN
  390.         ($say "The lamp is already off!\n")
  391.      ELSE
  392.         ($setp lamp LIGHT 0)
  393.         ($say "The lamp is now off.\n")
  394.     )
  395.     ($exit 1)
  396.     )
  397. ;
  398.  
  399.  
  400. oven(ACTION) =
  401.     (IF ($and ($eq ($loc .ME) irm4) ($eq ($verb) open)) THEN
  402.     ($say "The door of the oven doesn't budge.\n")
  403.     ($exit 1)
  404.     )
  405. ;
  406.  
  407.  
  408. grate(ACTION) =
  409.     (IF ($and ($eq ($prop paper signed) 0)
  410.     ($eq ($loc .ME) mrm5))
  411.      THEN
  412.     (IF ($or ($eq ($verb) open) ($eq ($verb) take)) THEN
  413.         ($say "The grate appears to be firmly cemented into the wall.\n")
  414.         (IF ($eq ($verb) open) THEN
  415.         ($exit 1)
  416.          ELSE
  417.         ($setg Skip TRUE)
  418.         )
  419.      ELSEIF ($eq ($verb) shut) THEN
  420.         ($say "The grate is already shut.\n")
  421.         ($exit 1)
  422.     )
  423.     )
  424. ;
  425.  
  426.  
  427. weapo =
  428.     (IF ($eq ($verb) throw) THEN
  429.     (IF ($and ($not ($prop bear hitbr)) ($eq ($loc .ME) prm19)) THEN
  430.         ($say "The axe bounces harmlessly off of the bear.\n")
  431.         ($move axe prm19)
  432.         ($exit 1)
  433.      ELSEIF ($eq ($loc .ME) prm14) THEN
  434.         ($say
  435. "The weapon that you just threw imbeds itself deep into the 
  436. skull of the mammoth and is covered by the mammoth's long fur so that it
  437. can't be seen.  The mammoth just stares back at you blankly.\n"
  438.         )
  439.         ($move ($dobj) .ALL)
  440.         ($exit 1)
  441.      ELSEIF ($or ($eq ($loc .ME) irm8) ($eq ($loc .ME) irm9)) THEN
  442.         ($say
  443. "You miss the crocodile and your weapon sinks into the river.\n"
  444.         )
  445.         ($move ($dobj) .ALL)
  446.         ($exit 1)
  447.      ELSEIF ($eq ($loc .ME) irm13) THEN
  448.         ($say "Your weapon bounces harmlessly off of the rhino.\n")
  449.         ($move ($dobj) irm13)
  450.         ($exit 1)
  451.      ELSEIF ($and ($eq ($loc .ME) prm6) ($not ($prop smilo stond))) THEN
  452.         ($say
  453. "The sabre-tooth catches your weapon in its mouth and promptly
  454. swallows it.\n"
  455.         )
  456.         ($move ($dobj) .ALL)
  457.         ($exit 1)
  458.      ELSEIF ($and ($eq ($loc .ME) prm8) ($not ($prop trogl killd))) THEN
  459.         ($say
  460. "You hit the troglodyte, who, screaming in pain, drops the
  461. gold nugget and falls over the cliff.\n"
  462.         )
  463.         ($setp trogl killd 1)
  464.         ($move ($dobj) .ALL)
  465.         ($move nugget prm8)
  466.         ($exit 1)
  467.     )
  468.     )
  469. ;
  470.  
  471.  
  472. spear(ACTION) =
  473.     (IF ($eq ($loc spear) .ME) THEN
  474.     (IF ($ne ($loc .ME) prm19) THEN
  475.         (weapo)
  476.     )
  477.     (IF ($eq ($verb) throw) THEN
  478.         ($say
  479. "You repeatedly throw your spear at the bear.  Eventually, he gets
  480. bored and wanders off.\n"
  481.         )
  482.         ($move bear .ALL)
  483.         ($move spear prm19)
  484.         ($setp bear hitbr 1)
  485.         ($exit 1)
  486.     )
  487.      ELSEIF ($eq ($loc .ME) prm17) THEN
  488.     (IF ($eq ($verb) take) THEN
  489.         (IF ($not ($prop spear tooky)) THEN
  490.         ($say
  491. "You hear a loud roar as an avalanche blocks the path to your north.\n"
  492.         )
  493.         ($setp spear tooky 1)
  494.         )
  495.     )
  496.      ELSEIF ($eq ($verb) shake) THEN
  497.     ($say "I don't see any playwrights here.\n")
  498.      ELSEIF ($and ($eq ($loc .ME) prm23) ($eq ($verb) take)) THEN
  499.     ($say 
  500. "As soon as you take the spear, the Tyranosaurus Rex closes his mouth and
  501. swallows you.\n"
  502.     )
  503.     (exitg)
  504.     )
  505. ;
  506.  
  507.  
  508. axe(ACTION) =
  509.     (IF ($eq ($loc axe) .ME) THEN
  510.     (weapo)
  511.     )
  512. ;
  513.  
  514.  
  515. smilo(ACTION) =
  516.     (IF ($and ($eq ($loc .ME) prm6) ($eq ($verb) take)) THEN
  517.     ($say "You must be dumber than you look.\n")
  518.     ($setg Skip TRUE)
  519.     )
  520. ;
  521.  
  522.  
  523. troglodyte(ACTION) =
  524.     (IF ($and ($eq ($loc .ME) prm8) ($eq ($verb) take)) THEN
  525.     ($say
  526. "The troglodyte does not look like he wants to be
  527. carried.\n"
  528.     )
  529.     ($setg Skip 1)
  530.     )
  531. ;
  532.  
  533.  
  534. plant(ACTION) =
  535.     (IF ($eq ($loc .ME) prm6) THEN
  536.     (IF ($or ($eq ($verb) throw) ($eq ($verb) drop)) THEN
  537.         (IF ($not ($prop smilo stond)) THEN
  538.         ($say 
  539. "The plant you were holding turns out to be primo grade catnip.  The
  540. sabre-tooth cat grabs the plant and runs off purring loudly.\n")
  541.         ($move plant .ALL)
  542.         ($setp smilo stond 1)
  543.         (IF ($eq ($verb) throw) THEN
  544.             ($exit 1)
  545.          ELSE
  546.             ($setg Skip TRUE)
  547.         )
  548.         )
  549.     )
  550.     )
  551.     (IF ($eq ($verb) eat) THEN
  552.     ($say "You completely eat the plant and now feel quite nauseous.\n")
  553.     ($move plant .ALL)
  554.     ($exit 1)
  555.     )
  556. ;
  557.  
  558.  
  559. nugget(ACTION) =
  560.     (IF ($and ($eq ($verb) take) ($not ($prop trogl killd))) THEN
  561.     ($say "He ain't gonna let you take it.\n")
  562.     ($setg Skip TRUE)
  563.     )
  564. ;
  565.  
  566.  
  567. cheese(ACTION) =
  568.     (IF ($eq ($verb) eat) THEN
  569.     ($say "You eat the cheese, but nothing peculiar happens.\n")
  570.     ($move cheese .ALL)
  571.     ($exit 1)
  572.      ELSEIF ($and ($eq ($verb) drop) ($eq ($loc .ME) prm14)) THEN
  573.     ($say 
  574. "As soon as you drop the cheese, a mouse runs out of the hole in the east 
  575. wall and takes it.  This scares the mammoth who runs off in terror.\n"
  576.     )
  577.     ($setp mammoth blokd 1)
  578.     ($move mammoth .ALL)
  579.     ($move cheese .ALL)
  580.     ($setg Skip TRUE)
  581.     )
  582. ;
  583.  
  584.  
  585. mammoth(ACTION) =
  586.     (IF ($eq ($loc mammoth) ($loc .ME)) THEN
  587.     (IF ($eq ($verb) feed) THEN
  588.         ($say "He doesn't look hungry.\n")
  589.         ($exit 1)
  590.      ELSEIF ($eq ($verb) take) THEN
  591.         ($say "He doesn't look too easy to carry.\n")
  592.         ($setg Skip TRUE)
  593.     )
  594.     )
  595. ;
  596.  
  597.  
  598. feet(ACTION) =
  599.     (IF ($eq ($verb) wipe) THEN
  600.     (IF ($ne ($loc towel) .ME) THEN
  601.         ($say "You don't have something to wipe them with.\n")
  602.         ($exit 1)
  603.      ELSE
  604.         ($say "You just cleaned off your feet.\n")
  605.         ($setp feet wiped 0)
  606.         ($exit 1)
  607.     )
  608.      ELSEIF ($eq ($verb) touch) THEN
  609.     ($say "You can't without bending your knees.\n")
  610.     )
  611. ;
  612.  
  613.  
  614. cairn(ACTION) =
  615.     (IF ($eq ($loc .ME) prm18) THEN
  616.     ($say 
  617. "How dare you do such a thing.  Any idiot with just the slightest knowledge
  618. of prehistoric etiquette knows that you aren't supposed to do anything to
  619. a cairn.\n"
  620.     )
  621.     ($exit 1)
  622.     )
  623. ;
  624.  
  625.  
  626. bear(ACTION) =
  627.     (IF ($eq ($loc .ME) prm19) THEN
  628.     (IF ($eq ($verb) take) THEN
  629.         (IF ($not ($prop bear hitbr)) THEN
  630.         ($say "The bear is a little too bulky to carry.\n")
  631.         ($setg Skip TRUE)
  632.         )
  633.     )
  634.     )
  635. ;
  636.  
  637.  
  638. tyranosaur(ACTION) =
  639.     (IF ($and ($ne ($loc .ME) prm22) ($ne ($loc .ME) prm23)) THEN
  640.     ($say
  641. "What?  One of those things hasn't existed in several million years.\n"
  642.     )
  643.     )
  644. ;
  645.  
  646.  
  647. hole(ACTION) =
  648.     (IF ($eq ($loc .ME) prm14) THEN
  649.     ($say "That hole is too small to do anything with.\n")
  650.     ($exit 1)
  651.      ELSEIF ($eq ($loc .ME) irm19) THEN
  652.     (IF ($and ($eq ($verb) drop) ($eq ($iobj) hole)) THEN
  653.         ($say "It falls back out of the hole.\n")
  654.         ($setg Skip TRUE)
  655.     )
  656.      ELSEIF ($eq ($loc .ME) irm6) THEN
  657.     (IF ($and ($eq ($verb) drop) ($eq ($iobj) hole)) THEN
  658.         (IF ($eq ($dobj) spices) THEN
  659.         ($say
  660. "The bag of spices rips against the jagged sides of the shaft and 
  661. almost all of the spices get blown away in the wind.\n"
  662.         )
  663.         ($move spices .ALL)
  664.          ELSEIF ($eq ($dobj) rupees) THEN
  665.         ($say
  666. "The rupees fall down the shaft into the darkness below.  You
  667. eventually hear a barely audible splash.\n"
  668.         )
  669.         ($setp rupees wellbt 1)
  670.         ($move rupees .ALL)
  671.          ELSE
  672.         ($say "That doesn't fit in the hole.\n")
  673.         )
  674.         ($setg Skip TRUE)
  675.         ($return 0)
  676.     )
  677.      ELSE
  678.     ($say "I do not see any holes here.\n")
  679.     ($exit 1)
  680.     )
  681. ;
  682.  
  683.  
  684. newspaper(ACTION) =
  685.     (IF ($eq ($verb) read) THEN
  686.     ($say
  687. "               DAILY GNUS\n
  688. Vol 2.                            25 AUGUST\n
  689. \n
  690. "
  691.     )
  692.     ($say
  693. "Spies in the far reaches of the Museum have reported that new construction
  694. is now taking place.\n\n"
  695.     )
  696.     ($say
  697. "Dungeon consultant Mr. Mctesq has recently waved his magic wand over the
  698. aardvark museum.  The following things should be brought to light:\n
  699. \tThe commands SAVE, RESTORE, and SHELL exist and work.\n"
  700.     )
  701.     ($say "\tENTER is a verb, but IN is a preposition.\n\n")
  702.     ($say
  703. "Again, Adventurers are reminded that restocking of the museum sections will
  704. be greatly rewarded.\n\n"
  705.     )
  706.     ($exit 1)
  707.     )
  708. ;
  709.  
  710.  
  711. crack(ACTION) =
  712.     (IF ($eq ($verb) jamb) THEN
  713.     ($say "The only climbable cracks in this place are A4.\n")
  714.     ($exit 1)
  715.     )
  716.     ($say
  717. "I can't figure that out. I'm not as smart as I am 
  718. cracked up to be.\n"
  719.     )
  720.     ($exit 1)
  721. ;
  722.  
  723.  
  724. shaft(ACTION) =
  725.     (IF ($eq ($verb) jamb) THEN
  726.     ($say "Try jamb crack (How do you jamb a shaft?)\n")
  727.     ($exit 1)
  728.      ELSEIF ($and ($eq @Verb drop) ($eq @Iobj shaft)) THEN
  729.     ($setg Iobj hole)
  730.     (($prop hole ACTION))
  731.     )
  732. ;
  733.