992 lines
30 KiB
Plaintext
992 lines
30 KiB
Plaintext
"NORTH for
|
|
NORD AND BERT
|
|
(c) Copyright 1987 Infocom, Inc. All Rights Reserved."
|
|
|
|
;"scene is JOAT"
|
|
|
|
<ROOM JACKVILLE
|
|
(LOC ROOMS)
|
|
(DESC "Jackville")
|
|
(LDESC
|
|
"You have come upon a region far to the north of Punster, but still within
|
|
the realm of possibilities. A simple wood-plank house stands near.")
|
|
(OUT PER FOREST-ENTER)
|
|
(GLOBAL JACK-HOUSE)
|
|
(IN TO JACK-ROOM)>
|
|
|
|
<ROUTINE FOREST-ENTER ()
|
|
<COND (<FSET? ,JACK-ROOM ,TOUCHBIT>
|
|
<TELL
|
|
"You walk along the trail a long way. With each uncertain
|
|
step you take, it grows darker. Clouds gather. With large puffy white cheeks,
|
|
they blow noisy cold across the sky, as will happen in this changeable
|
|
realm." CR CR>
|
|
<QUEUE I-FROST -1>
|
|
<RETURN ,FROST-ROOM>)
|
|
(T
|
|
<TELL
|
|
"You follow a twisty path under the canopy of the forest. After losing all
|
|
sense of direction, you end up back here." CR CR>
|
|
<RETURN ,JACKVILLE>)>>
|
|
|
|
<OBJECT JACK-HOUSE
|
|
(LOC LOCAL-GLOBALS)
|
|
(DESC "house that Jack built")
|
|
(SYNONYM HOUSE JACK BUILT)
|
|
(ADJECTIVE JACK)
|
|
(FLAGS NDESCBIT)
|
|
(ACTION JACK-HOUSE-F)>
|
|
|
|
<ROUTINE JACK-HOUSE-F ()
|
|
<COND (<VERB? ENTER WALK-TO BOARD>
|
|
<COND (<EQUAL? ,HERE ,JACK-ROOM>
|
|
<TELL ,LOOK-AROUND>)
|
|
(<EQUAL? ,HERE ,JACKVILLE>
|
|
<DO-WALK ,P?IN>)>)
|
|
(<VERB? LEAVE EXIT DISEMBARK>
|
|
<COND (<EQUAL? ,HERE ,JACK-ROOM>
|
|
<DO-WALK ,P?OUT>)
|
|
(T
|
|
<TELL ,LOOK-AROUND>)>)
|
|
(<AND <VERB? EXAMINE>
|
|
<EQUAL? ,HERE ,JACK-ROOM>>
|
|
<V-LOOK>)>>
|
|
|
|
<ROOM JACK-ROOM
|
|
(LOC ROOMS)
|
|
(DESC "Inside House")
|
|
(LDESC
|
|
"This drafty one-room cabin is so sparsely furnished as to be completely
|
|
unfurnished. It looks like it has not been lived in for years and years.")
|
|
(GLOBAL JACK-HOUSE)
|
|
(FLAGS INDOORSBIT)
|
|
(OUT TO JACKVILLE)
|
|
(ACTION JACK-ROOM-F)>
|
|
|
|
<ROUTINE JACK-ROOM-F (RARG)
|
|
<COND (<AND <EQUAL? .RARG ,M-ENTER>
|
|
<NOT <FSET? ,JOAT ,TOUCHBIT>>>
|
|
<THIS-IS-IT ,JOAT>)>>
|
|
|
|
|
|
<OBJECT JOAT
|
|
(LOC JACK-ROOM)
|
|
(DESC "Jack of all Traits")
|
|
(PICK-IT "Play Jacks")
|
|
(MAX-SCORE 11 ;10)
|
|
(SCENE-SCORE 0)
|
|
(SCENE-ROOM JACKVILLE)
|
|
(SCENE-CUR 0)
|
|
(FDESC
|
|
"There is a strange contraption leaning against one of the wood-plank walls.")
|
|
(SYNONYM CONTRAPTION JACK TRAITS TRADES TRAIT CLOTH THING JOAT)
|
|
(ADJECTIVE STRANGE SQUARE SQARISH LONG LONGISH THICK)
|
|
(FLAGS TAKEBIT OPENBIT SEARCHBIT CONTBIT WEARBIT NO-D-CONT)
|
|
(GENERIC GEN-JACK)
|
|
(ACTION JOAT-F)>
|
|
|
|
<ROUTINE JOAT-F ()
|
|
<COND (<AND <IN? ,JOAT ,GLOBAL-OBJECTS>
|
|
<VISIBLE? ,JACK-IS>>
|
|
<CHANGE-OBJECT ,JOAT ,JACK-IS>
|
|
<RTRUE>)
|
|
(<AND <VERB? RUB TOUCH>
|
|
<IN? ,BALL-OF-FUR ,JOAT>>
|
|
<CHANGE-OBJECT ,JOAT ,BALL-OF-FUR>
|
|
<RTRUE>)
|
|
(<VERB? WEAR>
|
|
<CHANGE-OBJECT ,JOAT ,SLEEVES>
|
|
<RTRUE>)
|
|
(<VERB? OPEN>
|
|
<CHANGE-OBJECT ,JOAT ,PIECE-OF-METAL>
|
|
<RTRUE>)
|
|
(<VERB? ON SET CLOSE>
|
|
<BE-MORE-SPECIFIC>)
|
|
(<VERB? EXAMINE LOOK-INSIDE>
|
|
<TELL
|
|
"You can see right away it's versatile.|
|
|
|
|
|
It's sort of squarish, but sort of longish too">
|
|
<COND (<IN? ,BALL-OF-FUR ,JOAT>
|
|
<TELL
|
|
" and has a fluffy ball of cottony fur at one end">)>
|
|
<TELL
|
|
". Its surface is made of thick cloth, except for one edge
|
|
which is a long piece of metal that looks as if it can be pulled out.|
|
|
|
|
|
On three different sides of the strange contraption you
|
|
can see a hand crank, a water faucet, and an electrical switch. As if all that
|
|
wasn't enough, there is also a pair of sleeves sticking out of the thing." CR>)>>
|
|
|
|
<ROUTINE CHANGE-JACK ("OPTIONAL" (OBJ <>))
|
|
<COND (<NOT ,JACK-IS>
|
|
<COND (<NOT <FSET? .OBJ ,PHRASEBIT>>
|
|
<FSET .OBJ ,PHRASEBIT>
|
|
<UPDATE-SCORE>)> ;"will get two points if using first
|
|
time and for right thing"
|
|
<FCLEAR .OBJ ,INTEGRALBIT>
|
|
<FSET .OBJ ,TAKEBIT>
|
|
<SETG JACK-IS .OBJ>
|
|
<MOVE .OBJ <LOC ,JOAT>>
|
|
<MOVE ,JOAT ,LOCAL-GLOBALS>
|
|
<RTRUE>)
|
|
(<NOT .OBJ> ;"change back to joat"
|
|
<COND (<EQUAL? ,JACK-IS ,FAUCET>
|
|
<MOVE ,JOAT <LOC ,HOT-TUB>>)
|
|
(T
|
|
<MOVE ,JOAT <LOC ,JACK-IS>>)>
|
|
<FSET ,JACK-IS ,INTEGRALBIT>
|
|
<FCLEAR ,JACK-IS ,TAKEBIT>
|
|
<MOVE ,JACK-IS ,JOAT>
|
|
<SETG JACK-IS <>>)
|
|
(T
|
|
<RFALSE>)>>
|
|
|
|
<GLOBAL JACK-IS <>> ;"the object that joat is currently, or false"
|
|
|
|
<ROUTINE NO-JACK-HERE (OBJ "OPTIONAL" (N1 <>) (N2 <>) (N3 <>)
|
|
"AUX" STR)
|
|
<SET STR <GETP .OBJ ,P?JACKDESC>>
|
|
<COND (<DONT-HANDLE .OBJ>
|
|
<RFALSE>)
|
|
(<AND <NOUN-USED .OBJ .N1 .N2 .N3>
|
|
<NOT ,JACK-IS>>
|
|
<TELL
|
|
"While the " D ,JOAT " has the potential to be a " .STR
|
|
", it is not yet one." CR>)
|
|
(<AND ,JACK-IS
|
|
<NOT <EQUAL? ,JACK-IS .OBJ>>>
|
|
<CANT-SEE <> .STR>)
|
|
(T
|
|
<RFALSE>)>>
|
|
|
|
<OBJECT BALL-OF-FUR
|
|
(LOC JOAT)
|
|
(DESC "ball of fur")
|
|
(JACKDESC "jackrabbit")
|
|
(SYNONYM BALL FUR BUNNY RABBIT JACKRABBIT TAIL)
|
|
(ADJECTIVE COTTONY JACK BUNNY)
|
|
(FLAGS ;NDESCBIT INTEGRALBIT)
|
|
(ACTION BALL-OF-FUR-F)>
|
|
|
|
<ROUTINE BALL-OF-FUR-F ()
|
|
<COND (<VERB? TOUCH RUB MOVE TAKE>
|
|
<COND ;(<EQUAL? ,JACK-IS ,BALL-OF-FUR>
|
|
<TELL "He likes it." CR>)
|
|
(;<CHANGE-JACK ,BALL-OF-FUR>
|
|
<NOT ,JACK-IS>
|
|
<REMOVE ,BALL-OF-FUR>
|
|
<UPDATE-SCORE>
|
|
<TELL "The ball of fur twitches excitedly for a
|
|
moment. Suddenly the " D ,JOAT " seems to give birth as a full-grown
|
|
jackrabbit is ejected from the contraption. His metabolism, following
|
|
its winter of cooped-up discontent, seems to be racing away. But the
|
|
furry mammal itself remains at your feet, all atremble. He pauses to look
|
|
up at you. To the extent that his beady red eyes are able to emote, he
|
|
seems to express gratitude. Then, with a jackrabbit start, he is gone." CR>)>)
|
|
|
|
;<"as the other features
|
|
of the " D ,JOAT " seem to become blurry and indistinct and fade away like
|
|
a mirage. You blink your eyes and shake your head, and as your vision clears,
|
|
you feel a jackrabbit squirming in your hands." CR>
|
|
(<NO-JACK-HERE ,BALL-OF-FUR ,W?BUNNY ,W?RABBIT
|
|
,W?JACKRABBIT>
|
|
<RTRUE>)>>
|
|
|
|
<OBJECT PIECE-OF-METAL
|
|
(LOC JOAT)
|
|
(DESC "long piece of metal")
|
|
(SYNONYM PIECE METAL JACK JACKKNIFE KNIFE BLADE)
|
|
(JACKDESC "jackknife")
|
|
(ADJECTIVE LONG JACK)
|
|
(FLAGS ;NDESCBIT INTEGRALBIT)
|
|
(ACTION PIECE-OF-METAL-F)>
|
|
|
|
<ROUTINE PIECE-OF-METAL-F ()
|
|
<COND (<VERB? OPEN REMOVE MOVE>
|
|
<COND ;(<EQUAL? ,JACK-IS ,PIECE-OF-METAL>
|
|
<TELL "It is">)
|
|
(<CHANGE-JACK ,PIECE-OF-METAL>
|
|
<FSET ,PIECE-OF-METAL ,OPENBIT>
|
|
<TELL
|
|
"The long piece of metal, in reality the glistening, razor-sharp blade of a
|
|
jackknife, pivots out of its handle and with a \"snap!\" all the other
|
|
features of the " D ,JOAT " vanish." CR>)>)
|
|
(<AND <VERB? CLOSE>
|
|
<EQUAL? ,JACK-IS ,PIECE-OF-METAL>>
|
|
<CHANGE-JACK>
|
|
<TELL
|
|
"Being careful that you don't lop off any fingers, you pivot the blade back
|
|
and it closes with a \"snap!\" All the other dimensions of the " D ,JOAT "
|
|
return." CR>)
|
|
(<NO-JACK-HERE ,PIECE-OF-METAL ,W?JACKKNIFE
|
|
,W?KNIFE>
|
|
<RTRUE>)
|
|
(<AND <VERB? CUT>
|
|
<PRSI? ,PIECE-OF-METAL>>
|
|
<COND (<PRSO? ,FISHING-LINE>
|
|
<REMOVE ,FISHING-LINE>
|
|
<UPDATE-SCORE>
|
|
<TELL
|
|
"Taking care not to fillet the fishy end of the mermaid, you slice away the "
|
|
D ,FISHING-LINE ", which blows away like a tumbleweed over the ">
|
|
<COND (<EQUAL? ,HERE ,POND-ROOM>
|
|
<TELL "surface of the frozen pond">)
|
|
(T
|
|
<TELL "snow">)>
|
|
<MERMAID-LEAVES>
|
|
<TELL ,PERIOD>
|
|
<RTRUE>)
|
|
(T
|
|
<TELL "Now you're a real cut up, aren't you">)>
|
|
<TELL ,PERIOD>)>>
|
|
|
|
<OBJECT CRANK
|
|
(LOC JOAT)
|
|
(DESC "hand crank")
|
|
(JACKDESC "jack-in-the-box")
|
|
(SYNONYM CRANK BOX JACK-IN-THE-BOX CLOWN JESTER LID JACK)
|
|
(ADJECTIVE HAND)
|
|
(FLAGS ;NDESCBIT INTEGRALBIT)
|
|
(GENERIC GEN-JACK)
|
|
(ACTION CRANK-F)>
|
|
|
|
<ROUTINE CRANK-F ()
|
|
<COND (<VERB? SET>
|
|
<COND (<CHANGE-JACK ,CRANK>
|
|
<FSET ,CRANK ,OPENBIT>
|
|
<TELL
|
|
"The " D ,JOAT " begins to play a simple plunkety tune, and as the music
|
|
becomes louder and louder the strange contraption starts looking a lot more like a box and a
|
|
lot less like anything else, and the music gets louder and louder until...|
|
|
|
|
|
\"Pop!\"|
|
|
|
|
|
The lid springs open and a jester rears its jolly head.|
|
|
|
|
|
\"Boing... Boing\"" CR>
|
|
<COND (<IN? ,FROST ,HERE>
|
|
<REMOVE ,FROST>
|
|
<UPDATE-SCORE> ;"also in change-jack rout."
|
|
<TELL CR
|
|
"The jester winks at the frozen old man, and you can almost hear the rushing
|
|
torrent of flood waters coming from deep within the heart of " D ,FROST
|
|
". Some human color suddenly rushes into his cheeks in a flush, reddening his
|
|
face and thawing the frown into much dripping and wetness, which can scarcely
|
|
be distinguished from tears of happiness.|
|
|
|
|
|
Under a sunny disposition, a more quick and nimble Jack frolics down the path,
|
|
making instant puddles out of his domain wherever he treads." CR>)
|
|
(<VISIBLE? ,MERMAID>
|
|
<TELL CR
|
|
"The mermaid merely smiles weakly." CR>)>
|
|
<RTRUE>)
|
|
(<EQUAL? ,JACK-IS ,CRANK> ;"lid is open"
|
|
<TELL
|
|
"As you rotate the crank, the box emits a plunkety, off-key tune." CR>)>)
|
|
(<OR <AND <VERB? CLOSE>
|
|
<EQUAL? ,JACK-IS ,CRANK>>
|
|
<AND <VERB? PUT>
|
|
<PRSO? ,PRSI>
|
|
<EQUAL? ,JACK-IS ,CRANK>>>
|
|
<CHANGE-JACK>
|
|
<TELL
|
|
"You can almost swear that the jester winks at you as his head is lowered
|
|
into the box and the lid is shut with a \"Click.\" All the other features of
|
|
the " D ,JOAT " come back." CR>)
|
|
(<AND <VERB? EXAMINE LOOK-INSIDE>
|
|
<EQUAL? ,JACK-IS ,CRANK>>
|
|
<TELL
|
|
"A grinning jester boings around through the open lid of the box." CR>)
|
|
(<NO-JACK-HERE ,CRANK ,W?JACK-IN-THE-BOX
|
|
,W?JESTER ,W?BOX>
|
|
<RTRUE>)
|
|
(<NO-JACK-HERE ,CRANK ,W?CLOWN ,W?LID>
|
|
<RTRUE>)>>
|
|
|
|
<OBJECT FAUCET
|
|
(LOC JOAT)
|
|
(DESC "water faucet")
|
|
(JACKDESC "Jacuzzi")
|
|
(SYNONYM FAUCET JACUZZI)
|
|
(ADJECTIVE WATER)
|
|
(FLAGS ;NDESCBIT INTEGRALBIT)
|
|
(ACTION FAUCET-F)>
|
|
|
|
;"RMUNGBIT = SCORE FOR TURN ON WITH MERMAID"
|
|
|
|
<ROUTINE FAUCET-F ()
|
|
<COND (<VERB? SET ON OPEN>
|
|
<COND (<EQUAL? ,HERE ,FROST-ROOM>
|
|
<TELL
|
|
"The pipes must be frozen, since nothing comes out of the faucet." CR>)
|
|
(<CHANGE-JACK ,FAUCET>
|
|
<REMOVE ,FAUCET>
|
|
<MOVE ,TUB-WATER ,HERE>
|
|
<MOVE ,HOT-TUB ,HERE> ;"tub has faucet syns."
|
|
<MOVE ,PROTAGONIST ,HOT-TUB>
|
|
<SETG OLD-HERE <>>
|
|
<TELL
|
|
"There is a deep gurgling sound, then scalding hot water begins gushing out
|
|
of the faucet, and you are surrounded by a thick cloud of steam. As the steam
|
|
begins to thin out, you find yourself leaning back in a hot tub with Jacuzzi,
|
|
and you can't remember when being in hot water ever felt so good">
|
|
<COND (<IN? ,MERMAID ,HERE>
|
|
<COND (<NOT <FSET? ,FAUCET ,RMUNGBIT>>
|
|
<FSET ,FAUCET ,RMUNGBIT>
|
|
<UPDATE-SCORE>)>
|
|
<MOVE ,MERMAID ,HOT-TUB>
|
|
<SETG MERMAID-WARM T>
|
|
<TELL ".||
|
|
The mermaid is also in the hot tub, smiling with her eyes closed as
|
|
she swims ">
|
|
<COND (<IN? ,FISHING-LINE ,MERMAID>
|
|
<TELL "with some difficulty">)
|
|
(T
|
|
<TELL "luxuriously">)>
|
|
<TELL " through the water">)>
|
|
<TELL ,PERIOD>)>)
|
|
(<VERB? OFF CLOSE>
|
|
<TELL "It's not on." CR>)
|
|
(<NO-JACK-HERE ,FAUCET ,W?JACUZZI ;,W?TUB>
|
|
<RTRUE>)>>
|
|
|
|
<GLOBAL MERMAID-WARM <>>
|
|
|
|
<OBJECT HOT-TUB
|
|
(DESC "hot tub")
|
|
(SYNONYM TUB PLUG JACUZZI FAUCET)
|
|
(ADJECTIVE HOT WATER)
|
|
(FLAGS VEHBIT INBIT OPENBIT CONTBIT SEARCHBIT)
|
|
(ACTION HOT-TUB-F)>
|
|
|
|
;"SEENBIT = got points for pulling plug"
|
|
|
|
;"you're in hot water"
|
|
<ROUTINE HOT-TUB-F ("OPT" (OARG <>))
|
|
<COND (.OARG
|
|
<RFALSE>) ;"to stop m-begs from happening"
|
|
(<AND <VERB? MOVE REMOVE TAKE OPEN>
|
|
<NOUN-USED ,HOT-TUB ,W?PLUG>>
|
|
<COND (<AND <NOT <FSET? ,HOT-TUB ,SEENBIT>>
|
|
<IN? ,MERMAID ,HOT-TUB>>
|
|
<UPDATE-SCORE>
|
|
<FSET ,HOT-TUB ,SEENBIT>)>
|
|
<CHANGE-JACK>
|
|
<REMOVE ,HOT-TUB>
|
|
<REMOVE ,TUB-WATER>
|
|
<MOVE ,PROTAGONIST ,HERE>
|
|
<SETG OLD-HERE <>>
|
|
<TELL
|
|
"The water, slowly at first, begins to swirl toward the plug, creating a whirl
|
|
of water so loud that it's nightmarish. You close your eyes and cover your
|
|
ears and when you hear the last loud slurp you find yourself standing
|
|
again">
|
|
<COND (<AND <IN? ,MERMAID ,HOT-TUB>
|
|
<NOT <IN? ,FISHING-LINE ,MERMAID>>>
|
|
<MERMAID-LEAVES>)
|
|
(<IN? ,MERMAID ,HOT-TUB>
|
|
<MOVE ,MERMAID ,HERE>
|
|
<TELL ,PERIOD>
|
|
<MERMAID-F ,M-OBJDESC>
|
|
<CRLF>
|
|
<RTRUE>)>
|
|
<TELL ,PERIOD>)
|
|
(<VERB? OFF CLOSE SET ON>
|
|
<TELL
|
|
"The washerless faucet spins round, and some hot, steamy water gurgles
|
|
out." CR>)
|
|
;(<VERB? OFF CLOSE>
|
|
<TELL "You turn back the washerless faucet." CR>)
|
|
(<AND <VERB? DISEMBARK>
|
|
<IN? ,PROTAGONIST ,HOT-TUB>>
|
|
<TELL
|
|
"Your muscles and your mind have so relaxed from the immersion in the
|
|
steamy waters that you have not the power or the will to leave." CR>)
|
|
(<AND <VERB? LEAP ENTER SWIM WALK-AROUND>
|
|
<IN? ,PROTAGONIST ,HOT-TUB>
|
|
<NOT <FSET? ,HOT-TUB ,RMUNGBIT>>>
|
|
<FSET ,HOT-TUB ,RMUNGBIT>
|
|
<TELL
|
|
"In moving about the hot tub, your foot brushes against what feels to be a
|
|
plug at bottom of the steamy water." CR>)>>
|
|
|
|
<OBJECT TUB-WATER
|
|
;(LOC LOCAL-GLOBALS)
|
|
(DESC "water")
|
|
(SYNONYM WATER)
|
|
(ADJECTIVE HOT)
|
|
(FLAGS NARTICLEBIT NDESCBIT)
|
|
(ACTION WATER-F)>
|
|
|
|
<OBJECT ELECTRICAL-SWITCH
|
|
(LOC JOAT)
|
|
(DESC "electrical switch")
|
|
(JACKDESC "jackhammer")
|
|
(SYNONYM SWITCH JACKHAMMER HAMMER)
|
|
(ADJECTIVE ELECTRICAL ELECTRIC JACK)
|
|
(FLAGS ;NDESCBIT INTEGRALBIT LIGHTBIT)
|
|
(ACTION ELECTRICAL-SWITCH-F)>
|
|
|
|
;"phrasebit = points gotten for turn it on"
|
|
|
|
<GLOBAL JACKHAMMER-C 0> ;"zero means it's off"
|
|
|
|
<ROUTINE ELECTRICAL-SWITCH-F ()
|
|
<COND (<NO-JACK-HERE ,ELECTRICAL-SWITCH
|
|
,W?JACKHAMMER ,W?HAMMER>
|
|
<RTRUE>)
|
|
(<AND <VERB? THROW KILL ON SET MOVE PUSH>
|
|
<EQUAL? ,HERE ,POND-ROOM>
|
|
<FSET? ,ICE ,RMUNGBIT>>
|
|
<TELL ,NICE-HOLE>
|
|
<RTRUE>)
|
|
(<AND <VERB? THROW MUNG ON SET MOVE PUSH>
|
|
<CHANGE-JACK ,ELECTRICAL-SWITCH>>
|
|
<TELL
|
|
"\"Rata-tat-tat! Rata-rata-rata-rata Tat-tat-tat!\"">
|
|
<COND (<EQUAL? ,HERE ,POND-ROOM>
|
|
<CHANGE-JACK> ;"back to joat"
|
|
<FSET ,MERMAID ,RMUNGBIT>
|
|
<MOVE ,MERMAID ,HERE>
|
|
<MOVE ,FISHING-LINE ,MERMAID>
|
|
<MOVE ,NECKLACE ,MERMAID>
|
|
<FSET ,ICE ,RMUNGBIT>
|
|
<TELL
|
|
" Shiny shards of ice go flying out of the plume of exhaust created by the
|
|
jackhammer as you ride the roaring machine in a tight circle. Then the hammer
|
|
itself is pulverized back into the " D ,JOAT ".">
|
|
<TELL CR CR
|
|
"The engine exhaust lifts, revealing the sight of a blue-tinted mermaid lying
|
|
exhausted next to a hole in the ice.|
|
|
|
|
|
The mermaid wearily slaps her tail fin against the damp ice">)
|
|
(T
|
|
<INC JACKHAMMER-C> ;"to one"
|
|
<COND (<NOT <FSET? ,ELECTRICAL-SWITCH ,PHRASEBIT>>
|
|
<FSET ,ELECTRICAL-SWITCH ,PHRASEBIT>
|
|
<UPDATE-SCORE>)>
|
|
<PUTP ,PROTAGONIST ,P?ACTION ,PROTAG-JACKHAMMER-F>
|
|
<TELL
|
|
" The " D ,JOAT " powerfully
|
|
roars to life as you hang on the wildly chugging " D ,ELECTRICAL-SWITCH " like a rodeo cowboy">)>
|
|
<TELL ,PERIOD>)>>
|
|
|
|
<GLOBAL S-JACKHAMMER
|
|
<LTABLE 2
|
|
"|
|
|
T y n t s y o e h n ?|
|
|
r i g o a s m t i g|"
|
|
|
|
"|
|
|
C n t v n e r o r e f h n !|
|
|
a ' e e h a y u s l t i k !|"
|
|
|
|
"|
|
|
J s t r o f t i j c h m e ! !|
|
|
u t u n f h s a k a m r !|">>
|
|
|
|
<OBJECT SLEEVES
|
|
(LOC JOAT)
|
|
(DESC "sleeves")
|
|
(JACKDESC "jacket")
|
|
(SYNONYM SLEEVES SLEEVE PAIR JACKET COAT)
|
|
(FLAGS ;NDESCBIT PLURALBIT INTEGRALBIT WEARBIT)
|
|
(ACTION SLEEVES-F)>
|
|
|
|
<ROUTINE SLEEVES-F ()
|
|
<COND (<AND <VERB? WEAR>
|
|
<NOT <FSET? ,SLEEVES ,WORNBIT>>
|
|
<CHANGE-JACK ,SLEEVES>>
|
|
<MOVE ,SLEEVES ,PROTAGONIST>
|
|
<FSET ,SLEEVES ,WORNBIT>
|
|
<FCLEAR ,SLEEVES ,PLURALBIT>
|
|
<TELL
|
|
"As you slip on the jacket, you find that it fits you quite well. It feels
|
|
a lot more comfortable than it looks.">
|
|
<COND (<EQUAL? ,HERE ,FROST-ROOM>
|
|
<SETG FROST-C 0>
|
|
;<UPDATE-SCORE>
|
|
<TELL
|
|
" It offers much shelter from the cold, which is now nipping at your nose.">)>
|
|
<CRLF>
|
|
<RTRUE>)
|
|
(<AND <VERB? PUT>
|
|
<PRSO? ,HANDS>>
|
|
<PERFORM ,V?WEAR ,SLEEVES>
|
|
<RTRUE>)
|
|
(<AND <VERB? REMOVE TAKE-OFF>
|
|
<FSET? ,SLEEVES ,WORNBIT>>
|
|
<CHANGE-JACK>
|
|
<FSET ,SLEEVES ,PLURALBIT>
|
|
<FCLEAR ,SLEEVES ,WORNBIT>
|
|
<MOVE ,JOAT ,PROTAGONIST>
|
|
<TELL
|
|
"You slip off what feels to be a jacket. All features return to the " D ,JOAT
|
|
"." CR>)
|
|
(<NO-JACK-HERE ,SLEEVES ,W?COAT ,W?JACKET>
|
|
<RTRUE>)>>
|
|
|
|
|
|
;"encounter with Jack Frost stuff"
|
|
|
|
<ROOM FROST-ROOM
|
|
(LOC ROOMS)
|
|
(SDESC "All Whiteness and Cold")
|
|
;"piece of blank white paper"
|
|
(LDESC "It looks like a picture of a wedding gown in a snow storm.")
|
|
(OUT TO FROST-ROOM)
|
|
(IN TO FROST-ROOM)
|
|
(GLOBAL SNOW)
|
|
(ACTION FROST-ROOM-F)>
|
|
|
|
<ROUTINE FROST-ROOM-F (RARG)
|
|
<COND (<EQUAL? .RARG ,M-BEG>
|
|
<COND (<AND <VERB? WEAR>
|
|
<PRSO? ,SLEEVES>>
|
|
<RFALSE>)
|
|
(<OR <PRSO? ,FROST>
|
|
<PRSI? ,FROST>>
|
|
<RFALSE>)
|
|
(<AND ,PRSO
|
|
<TOUCHING? ,PRSO>>
|
|
<TELL
|
|
"Your fingers are so stiff with cold">
|
|
<COND (<AND <PRSO? ,PIECE-OF-METAL>
|
|
<VERB? CLOSE>
|
|
<EQUAL? ,JACK-IS ,PIECE-OF-METAL>>
|
|
<TELL ", but you try..." CR CR>
|
|
<RFALSE>)
|
|
(T
|
|
<TELL ", it's impossible." CR>)>
|
|
<RTRUE>)
|
|
(<AND ,PRSO
|
|
<SEEING? ,PRSO>
|
|
<VISIBLE? ,PRSO>>
|
|
<TELL
|
|
"Because of the blizzard conditions, you can just barely see" TR ,PRSO>)
|
|
(T
|
|
<RFALSE>)>)>>
|
|
|
|
<ROUTINE GEN-JACK ()
|
|
<COND (<OR <NOT <VISIBLE? ,FROST>>
|
|
<FSET? ,FROST ,NDESCBIT>>
|
|
,JOAT)
|
|
(<VERB? TELL ASK-ABOUT>
|
|
,FROST)
|
|
(T
|
|
<RFALSE>)>>
|
|
|
|
<GLOBAL FROST-C 0>
|
|
|
|
<ROUTINE I-FROST ()
|
|
<INC FROST-C>
|
|
<COND (<NOT <FSET? ,SLEEVES ,WORNBIT>> ;"assumes in frost-room"
|
|
<COND (<EQUAL? ,FROST-C 1>
|
|
<TELL CR
|
|
"The cold wind is breezing right through you">)
|
|
(<EQUAL? ,FROST-C 3>
|
|
<TELL CR "All feeling is leaving your body">)
|
|
(<EQUAL? ,FROST-C 4>
|
|
<TELL CR "You feel cold and near death">)
|
|
;(<AND <EQUAL? ,FROST-C 4>
|
|
<VISIBLE? ,SLEEVES>>
|
|
<TELL CR
|
|
"You look longingly at the sleeves of the " D ,JOAT>)
|
|
(<EQUAL? ,FROST-C 5>
|
|
<JIGS-UP "You perish of the cold.">)
|
|
(T
|
|
<RTRUE>)>
|
|
<TELL ,PERIOD>
|
|
<RTRUE>)
|
|
(<EQUAL? ,FROST-C 2>
|
|
<TELL CR
|
|
"Despite the shelter of the jacket, you're still in the midst of a cold
|
|
snap. You begin to smell the vague illusory odor of \"chestnuts roasting on an
|
|
open fire.\"" CR>
|
|
<RTRUE>)
|
|
(<EQUAL? ,FROST-C 3>
|
|
<TELL CR
|
|
"There continues to be an annoying bitter cold frost nipping at your nose."
|
|
CR>)
|
|
(<EQUAL? ,FROST-C 4>
|
|
<TELL CR
|
|
"You can barely see your hand in front of your face, but you can't miss
|
|
the personification of frosty weather himself nipping at your nose." CR>)
|
|
(<EQUAL? ,FROST-C 5>
|
|
<JIGS-UP
|
|
"You can't see where you're going and wander into a wayward avalanche.">
|
|
<RTRUE>)>>
|
|
|
|
<ROOM NEAR-POND
|
|
(LOC ROOMS)
|
|
(DESC "Near pond")
|
|
(LDESC
|
|
"The mountain air is still and cold. You are
|
|
next to a frozen-over pond, ringed by dense forest.|
|
|
|
|
|
There is an old wooden sign leaning slightly over.")
|
|
;(OUT TO JACKVILLE)
|
|
(IN PER POND-ROOM-ENTER)
|
|
(GLOBAL SNOW SIGN ICE)
|
|
(ACTION NEAR-POND-F)>
|
|
|
|
<ROUTINE NEAR-POND-F (RARG)
|
|
<COND (<AND <EQUAL? .RARG ,M-END>
|
|
<NOT <FSET? ,FROST ,RMUNGBIT>>>
|
|
<FSET ,FROST ,RMUNGBIT>
|
|
<TELL CR
|
|
"The man refuses to communicate with you" ,STANDS-STILL>)>>
|
|
|
|
<ROUTINE POND-ROOM-ENTER ()
|
|
<COND (<IN? ,FROST ,HERE>
|
|
<SEE-FROST>
|
|
;<HEAR-FROST>
|
|
<TELL
|
|
"\"" <PICK-NEXT <GET ,S-FROST 0>> ",\" says the man "
|
|
<PICK-NEXT <GET ,S-FROST 1>>>
|
|
<COND (<EQUAL? <GET <GET ,S-FROST 1> 1> 2> ;"at first ele"
|
|
<TELL
|
|
". He holds out a gnarled stick, blocking your way onto the ice">)>
|
|
<TELL ". \"" <PICK-NEXT <GET ,S-FROST 2>> "\"">
|
|
<COND (<EQUAL? <GET <GET ,S-FROST 1> 1> 3>
|
|
<TELL
|
|
" He raps his stick against the hard frozen pond.">)>
|
|
<CRLF>
|
|
<RFALSE>)
|
|
(T
|
|
<TELL
|
|
"You walk out onto the middle of the frozen pond." CR CR>
|
|
<RETURN ,POND-ROOM>)>>
|
|
|
|
<OBJECT LAYER-OF-FROST
|
|
(LOC POND-ROOM)
|
|
(DESC "layer of frost")
|
|
(SYNONYM LAYER FROST ;SNOW)
|
|
(FLAGS TRYTAKEBIT NDESCBIT)
|
|
(ACTION LAYER-OF-FROST-F)>
|
|
|
|
<ROUTINE LAYER-OF-FROST-F ()
|
|
<COND (<VERB? MOVE KICK CLEAN>
|
|
<COND (<FSET? ,LAYER-OF-FROST ,RMUNGBIT>
|
|
<TELL "It's been done." CR>)
|
|
(<FSET? ,ICE ,RMUNGBIT>
|
|
<TELL ,NICE-HOLE>)
|
|
(T
|
|
<FSET ,LAYER-OF-FROST ,RMUNGBIT>
|
|
;<COND (<ZERO? <LOC ,MERMAID>>)>
|
|
<MOVE ,MERMAID ,HERE>
|
|
<TELL
|
|
"You knock a wide circle of frost away from the ice, allowing you to see an
|
|
astonishing sight below the ice: A woman's face with her large beautiful
|
|
eyes wide open and her long, blond hair drifting back and forth as she swims
|
|
side to side below the surface of the ice." CR>)>)>>
|
|
|
|
<OBJECT SNOW
|
|
(LOC LOCAL-GLOBALS)
|
|
(DESC "snow")
|
|
(SYNONYM SNOW BALL SNOWBALL)
|
|
(ADJECTIVE SNOW)
|
|
(FLAGS NOA TRYTAKEBIT NDESCBIT)
|
|
(ACTION SNOW-F)>
|
|
|
|
<ROUTINE SNOW-F ()
|
|
<COND (<AND <VERB? PUT-ON>
|
|
<PRSI? ,SNOW>>
|
|
<PERFORM ,V?DROP ,PRSO>
|
|
<RTRUE>)
|
|
(<NOUN-USED ,SNOW ,W?BALL ,W?SNOWBALL>
|
|
<COND (<VERB? MAKE>
|
|
<WASTES>
|
|
<RTRUE>)>
|
|
<CANT-SEE <> "snowball">)>>
|
|
|
|
<OBJECT ICE
|
|
(LOC LOCAL-GLOBALS)
|
|
(DESC "ice")
|
|
(SYNONYM ICE POND HOLE)
|
|
(ADJECTIVE FROZEN ICE)
|
|
(FLAGS NDESCBIT VOWELBIT NARTICLEBIT TRYTAKEBIT)
|
|
(ACTION ICE-F)>
|
|
|
|
<ROUTINE ICE-F ()
|
|
<COND (<AND <NOUN-USED ,ICE ,W?HOLE>
|
|
<NOT <FSET? ,ICE ,RMUNGBIT>>>
|
|
<CANT-SEE <> "hole">)
|
|
(<AND <NOUN-USED ,ICE ,W?HOLE>
|
|
<VERB? EXAMINE LOOK-INSIDE>>
|
|
<TELL "The jagged hole in the ice reveals water." CR>)
|
|
(<AND <EQUAL? ,HERE ,NEAR-POND>
|
|
<VERB? STAND-ON ENTER BOARD WALK-TO>>
|
|
<DO-WALK ,P?IN>)
|
|
(<AND <EQUAL? ,HERE ,NEAR-POND>
|
|
<TOUCHING? ,ICE>>
|
|
<TELL "You can't reach the pond from here." CR>)
|
|
(<AND <VERB? REMOVE TAKE SHAKE MUNG>
|
|
<EQUAL? ,HERE ,NEAR-POND>>
|
|
<TELL "The ice is too firmly attached." CR>)
|
|
(<AND <VERB? PUT-ON PUT>
|
|
<PRSI? ,ICE>>
|
|
<COND (<FSET? ,ICE ,RMUNGBIT>
|
|
<WASTES>
|
|
<RTRUE>)>
|
|
<PERFORM ,V?DROP ,PRSO>
|
|
<RTRUE>)
|
|
(<VERB? BOARD ENTER>
|
|
<TELL
|
|
"One tippy toe tells you it's too cold." CR>)
|
|
(<VERB? EXAMINE LOOK-UNDER LOOK-INSIDE>
|
|
<PERFORM ,V?LOOK>
|
|
<RTRUE>)
|
|
(<VERB? MUNG>
|
|
<COND (<AND <PRSI? ,ELECTRICAL-SWITCH>
|
|
<EQUAL? ,JACK-IS ,ELECTRICAL-SWITCH>>
|
|
<PERFORM ,V?ON ,ELECTRICAL-SWITCH>
|
|
<RTRUE>)>
|
|
<TELL "The ice is too thick">
|
|
<COND (,PRSI
|
|
<TELL " to be penatrated by" T ,PRSI>)>
|
|
<TELL ,PERIOD>)>>
|
|
|
|
<OBJECT FROST
|
|
(LOC FROST-ROOM)
|
|
(DESC "Jack Frost")
|
|
(SYNONYM FROST JACK MAN)
|
|
(ADJECTIVE OLD JACK)
|
|
(LDESC
|
|
"An old man is next to the pond, standing bent like one of the age old trees of
|
|
the forest, with the frost of storms past still clinging in its whiteness
|
|
upon his dark overcoat. He holds in his hands a gnarled stick.")
|
|
(FLAGS ACTORBIT NARTICLEBIT NDESCBIT NO-D-CONT CONTBIT OPENBIT
|
|
SEARCHBIT)
|
|
(GENERIC GEN-JACK)
|
|
(ACTION FROST-F)>
|
|
|
|
<ROUTINE FROST-F ()
|
|
<COND (<RUNNING? ,I-FROST>
|
|
<COND (<NOT <FSET? ,SLEEVES ,WORNBIT>>
|
|
<TELL "No such Jack has been suggested." CR>
|
|
<RTRUE>)>
|
|
<UPDATE-SCORE>
|
|
<FCLEAR ,FROST ,NDESCBIT>
|
|
<MOVE ,FROST ,NEAR-POND>
|
|
<TELL
|
|
"Suddenly, all of the thick, nasty weather surrounding you begins
|
|
to swirl, then lift, slowly
|
|
at first, and then more rapidly up above your head, then up further to
|
|
expose the large and many trunks of dense evergreen forest, and then
|
|
up and past the high tops of the trees themselves and into the heavens." CR CR>
|
|
<DEQUEUE I-FROST>
|
|
<GOTO ,NEAR-POND>
|
|
<RTRUE>)>
|
|
<COND (<EQUAL? ,FROST ,WINNER>
|
|
<SEE-FROST>
|
|
<COND ;(<AND <VERB? TELL-ABOUT>
|
|
;<PRSO? ,ME>
|
|
<PRSI? ,ICE>>
|
|
<TELL "\"The ice is dangerous.\"" CR>)
|
|
(<AND <VERB? GIVE>
|
|
<PRSO? ,STICK>
|
|
<PRSI? ,ME>>
|
|
<SETG WINNER ,PROTAGONIST>
|
|
<PERFORM ,V?TAKE ,STICK>
|
|
<SETG WINNER ,FROST>
|
|
<RTRUE>)
|
|
(T
|
|
<TELL
|
|
"The man does not say anything in return" ,STANDS-STILL>)>)
|
|
(<VERB? EXAMINE>
|
|
<TELL
|
|
"He wears a permafrost frown upon his face, a face that betrays a lifetime
|
|
of never any joy, never any surprise, never any sunshine." CR>)
|
|
(<AND <VERB? ASK-FOR>
|
|
<PRSI? ,STICK>>
|
|
<PERFORM ,V?TAKE ,STICK>
|
|
<RTRUE>)
|
|
(<AND <VERB? GIVE SHOW>
|
|
<PRSO? ,JOAT>>
|
|
<COND (<VERB? GIVE>
|
|
<TELL
|
|
"He rejects your offer with an upraised palm. B">)
|
|
(T
|
|
<TELL "The frown remains frozen, b">)>
|
|
<TELL
|
|
"ut he looks at the " D ,JOAT " with a tiny glimmer of curiosity in his
|
|
eye." CR>)>>
|
|
|
|
<GLOBAL S-FROST
|
|
<PTABLE
|
|
<LTABLE 2
|
|
"Whoa there"
|
|
"Watch yourself"
|
|
"Beware"
|
|
"Look out">
|
|
<LTABLE 2
|
|
"with a voice rough and uneven as if from exposure to the cold"
|
|
"gruffly"
|
|
"in a stern voice">
|
|
<LTABLE 2
|
|
"Don't you see this ice? You couldn't fall through it if you tried."
|
|
"Go find some really THIN ice to go tap-dancing on."
|
|
"The ice is too thick here. My job is to make things cold for you, not let
|
|
you have fun.">>>
|
|
|
|
<ROUTINE SEE-FROST ()
|
|
<COND (<NOT <FSET? ,FROST ,SEENBIT>>
|
|
<FSET ,FROST ,SEENBIT>
|
|
<TELL
|
|
"The frost-covered man turns and faces toward you. Some flakes of snow float
|
|
down off his well-dusted coat." CR CR>)>>
|
|
|
|
;<ROUTINE HEAR-FROST ()
|
|
<COND (<NOT <FSET? ,FROST ,HEARDBIT>>
|
|
<FSET ,FROST ,HEARDBIT>
|
|
<TELL
|
|
"Tiny flakes of snow drift from the frozen features of his face as the man
|
|
begins to speak." CR CR>)>>
|
|
|
|
<OBJECT STICK
|
|
(LOC FROST)
|
|
(DESC "gnarled stick")
|
|
(SYNONYM STICK)
|
|
(ADJECTIVE GNARLED)
|
|
(FLAGS TRYTAKEBIT)
|
|
(ACTION STICK-F)>
|
|
|
|
<ROUTINE STICK-F ()
|
|
<COND (<VERB? TAKE>
|
|
<TELL
|
|
"Giving you nothing but a frozen stare, Jack Frost withdraws the gnarled stick
|
|
from you." CR>)>>
|
|
|
|
<ROOM POND-ROOM
|
|
(LOC ROOMS)
|
|
(DESC "On Frozen Pond")
|
|
(OUT TO NEAR-POND)
|
|
(IN TO POND-ROOM)
|
|
(GLOBAL SNOW ICE WATER)
|
|
(ACTION POND-ROOM-F)>
|
|
|
|
<ROUTINE POND-ROOM-F (RARG)
|
|
<COND (<EQUAL? .RARG ,M-LOOK>
|
|
<TELL
|
|
"You're on a frozen pond covered by a thin layer of frost">
|
|
<COND (<FSET? ,ICE ,RMUNGBIT>
|
|
<TELL ". There is a hole in the ice">)
|
|
(<FSET? ,LAYER-OF-FROST ,RMUNGBIT>
|
|
<TELL
|
|
" except where a wide circle of the frost has been wiped away">)>
|
|
<TELL ".">)>>
|
|
|
|
<OBJECT MERMAID
|
|
(DESC "mermaid")
|
|
(SYNONYM MERMAID FIN)
|
|
(DESCFCN MERMAID-F)
|
|
(ADJECTIVE TAIL)
|
|
(FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT NO-D-CONT FEMALEBIT)
|
|
(ACTION MERMAID-F)>
|
|
|
|
;"RMUNGBIT = removed her from under ice"
|
|
|
|
<ROUTINE MERMAID-F ("OPT" (OARG <>))
|
|
<COND (.OARG
|
|
<COND (<EQUAL? .OARG ,M-OBJDESC?>
|
|
<RTRUE>)>
|
|
<COND (<NOT <FSET? ,MERMAID ,RMUNGBIT>>
|
|
<TELL CR
|
|
"A mermaid swims desperately under the suface of the ice.">)
|
|
(T
|
|
<TELL CR
|
|
"A mermaid is lying exhausted on the ice.">)>)
|
|
(<VERB? TELL>
|
|
<COND (<NOT <FSET? ,MERMAID ,RMUNGBIT>>
|
|
<TELL
|
|
"In slow motion she waves her head then hits the ice with her hand">)
|
|
(T
|
|
<TELL
|
|
"The mermaid gives you a slow smile">
|
|
<COND (<IN? ,MERMAID ,HOT-TUB>
|
|
<TELL
|
|
" while effortlessly and relaxingly treading water">)
|
|
(T
|
|
<TELL
|
|
" and tilts her head slightly to one side">)>)>
|
|
<TELL ,PERIOD>
|
|
<STOP>)
|
|
(<VERB? EXAMINE>
|
|
<COND (<NOT <FSET? ,MERMAID ,RMUNGBIT>>
|
|
<TELL
|
|
"The mermaid is floating upright and swimming, with some difficulty, to and
|
|
fro under the surface of the ice. Her long blond hair drifts back and forth
|
|
following the undulating motion of her body">
|
|
<COND (<NOT <FSET? ,MERMAID ,SEENBIT>>
|
|
<FSET ,MERMAID ,SEENBIT>
|
|
<TELL ".||
|
|
Tiny bubbles drift from her mouth in an aborted effort to speak">)>)
|
|
(T
|
|
<TELL
|
|
"The mermaid is tall, curvaceous and attractive, even with her long blond hair
|
|
dripping wet">
|
|
<COND (<IN? ,FISHING-LINE ,MERMAID>
|
|
<TELL
|
|
". There is a large tangle of fishing line wrapped around her sizable tail
|
|
fin">)>
|
|
<COND (<IN? ,NECKLACE ,MERMAID>
|
|
<TELL ". She's wearing a shark-tooth necklace">)>)>
|
|
<TELL ,PERIOD>)
|
|
(<AND <TOUCHING? ,MERMAID>
|
|
<NOT <FSET? ,MERMAID ,RMUNGBIT>>>
|
|
<TELL
|
|
"A couple inches of ice is in the way." CR>)
|
|
(<VERB? KISS>
|
|
<COND (<NOT ,MERMAID-KISS>
|
|
<SETG MERMAID-KISS T>
|
|
<TELL
|
|
"You drift near enough to feel the warmth of her breath, which carries
|
|
barely a hint of brine but is not unpleasant. ">)>
|
|
<TELL "She turns gracefully away." CR>)>>
|
|
|
|
<GLOBAL MERMAID-KISS <>>
|
|
|
|
<ROUTINE MERMAID-LEAVES ()
|
|
<COND (,MERMAID-WARM
|
|
<REMOVE ,MERMAID>
|
|
<QUEUE I-END-SCENE 1>
|
|
<TELL
|
|
".||
|
|
The mermaid, having been warmed by the dip in the hot tub, and freed of
|
|
the entanglement of the fishing line, appears ready to brave the frigid
|
|
waters for a long swim to warmer regions. She hyperventilates for a few
|
|
moments and braces herself with a frenetic self-hug, stopping to give you
|
|
a smile with her thin lips.|
|
|
|
|
|
She bids farewell, and slips back into the frigid water, causing a
|
|
little plop of water as her tail fin disappears beneath the surface">)>>
|
|
|
|
<OBJECT FISHING-LINE
|
|
;(LOC MERMAID)
|
|
(DESC "tangle of fishing line")
|
|
(SYNONYM TANGLE LINE)
|
|
(ADJECTIVE FISHING)
|
|
(FLAGS NDESCBIT TRYTAKEBIT)
|
|
(ACTION FISHING-LINE-F)>
|
|
|
|
<ROUTINE FISHING-LINE-F ()
|
|
<COND (<VERB? TAKE UNTIE>
|
|
<TELL
|
|
"It's far too enmeshed onto the scaly tail fin for you to untie." CR>)>>
|
|
|
|
<OBJECT NECKLACE
|
|
;(LOC MERMAID)
|
|
(DESC "shark-tooth necklace")
|
|
(SYNONYM NECKLACE)
|
|
(ADJECTIVE SHARK-TOOTH SHARK)
|
|
(FLAGS TRYTAKEBIT)
|
|
(ACTION NECKLACE-F)>
|
|
|
|
<ROUTINE NECKLACE-F ()
|
|
<COND (<AND <VERB? TAKE>
|
|
<IN? ,NECKLACE ,MERMAID>>
|
|
<TELL
|
|
"The mermaid covers up her necklace and shrinks away from you." CR>)>>
|
|
|