mirror of
https://github.com/historicalsource/hollywoodhijinx
synced 2024-04-29 15:39:33 +03:00
886 lines
27 KiB
Plaintext
886 lines
27 KiB
Plaintext
|
|
||
|
|
||
|
.FUNCT CLOSET-HOLE-PSEUDO
|
||
|
EQUAL? PRSA,V?PUT \?ELS5
|
||
|
EQUAL? PRSO,PEG-0 \?ELS10
|
||
|
ADD SCORE,10 >SCORE
|
||
|
CALL ROB,PLAYER,HEART-OF-MAZE
|
||
|
FSET? RING,WORNBIT \?CND11
|
||
|
MOVE RING,PLAYER
|
||
|
?CND11: FSET? TOUPEE,WORNBIT \?CND14
|
||
|
MOVE TOUPEE,PLAYER
|
||
|
?CND14: FSET? MASK,WORNBIT \?CND17
|
||
|
MOVE MASK,PLAYER
|
||
|
?CND17: CALL DEQUEUE,I-SANDS-OF-TIME
|
||
|
CALL DEQUEUE,I-NOISE
|
||
|
CALL QUEUE,I-AUNT,2
|
||
|
PRINTI "You put"
|
||
|
CALL TPRINT,PEG-0
|
||
|
PRINTI " in the hole and the closet door slams shut. Without warning, the floor drops out from under you! You fall for several seconds then land with a bone-crunching thud, dropping everything you're holding. You slide down a twisting, slippery slide and are dumped into a room filled with props.
|
||
|
|
||
|
You look around the room and can't believe what your eyes are seeing. There is Aunt Hildegarde! She's tied to the conveyor belt of a whirling buzz saw and a man is standing over her. Aunt Hildegarde sees you and screams. The man turns and you immediately recognize your childhood nemesis: Cousin Herman."
|
||
|
CRLF
|
||
|
CRLF
|
||
|
CALL QUEUE,I-HERMAN-ATTACK,2
|
||
|
CALL GOTO,PROP-VAULT
|
||
|
RSTACK
|
||
|
?ELS10: PRINTI "The "
|
||
|
CALL DPRINT,PRSO
|
||
|
PRINTR " won't fit in the hole."
|
||
|
?ELS5: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
|
||
|
PRINTR "You see nothing but darkness."
|
||
|
|
||
|
|
||
|
.FUNCT CLOSET-F,RARG,DOOR
|
||
|
EQUAL? RARG,M-LOOK \FALSE
|
||
|
CALL WHICH-DOOR? >DOOR
|
||
|
PRINTI "You're in a small closet. Mounted at an angle on the back wall of the closet are three coat pegs. To the left of the first peg there is a hole the size of a peg. To the right of the third peg there is a peg which has been sawed-off, flush with the wall. The door to the north is "
|
||
|
FSET? DOOR,OPENBIT \?ELS8
|
||
|
PRINTI "open"
|
||
|
JUMP ?CND6
|
||
|
?ELS8: PRINTI "closed"
|
||
|
?CND6: PRINTC 46
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT PEG-5-F
|
||
|
EQUAL? PRSA,V?EXAMINE \?ELS5
|
||
|
PRINTR "It's what's left of a coat peg. It looks as if someone sawed off the peg."
|
||
|
?ELS5: EQUAL? PRSA,V?PULL \FALSE
|
||
|
PRINTR "There's nothing to pull -- it's sawed-off."
|
||
|
|
||
|
|
||
|
.FUNCT CLOSET-EXIT-F,DOOR
|
||
|
CALL WHICH-DOOR? >DOOR
|
||
|
FSET? DOOR,OPENBIT /?ELS5
|
||
|
CALL THIS-IS-IT,DOOR
|
||
|
CALL ITS-CLOSED,DOOR
|
||
|
RFALSE
|
||
|
?ELS5: EQUAL? CLOSET-FLOOR,CELLAR \?ELS7
|
||
|
RETURN CELLAR
|
||
|
?ELS7: EQUAL? CLOSET-FLOOR,FOYER \?ELS9
|
||
|
RETURN FOYER
|
||
|
?ELS9: RETURN UPSTAIRS-HALL-MIDDLE
|
||
|
|
||
|
|
||
|
.FUNCT WHICH-DOOR?
|
||
|
EQUAL? HERE,CLOSET \?ELS5
|
||
|
EQUAL? CLOSET-FLOOR,CELLAR \?ELS10
|
||
|
RETURN CELLAR-CD
|
||
|
?ELS10: EQUAL? CLOSET-FLOOR,FOYER \?ELS12
|
||
|
RETURN FOYER-CD
|
||
|
?ELS12: EQUAL? CLOSET-FLOOR,UPSTAIRS-HALL-MIDDLE \?ELS14
|
||
|
RETURN UPSTAIRS-CD
|
||
|
?ELS14: RETURN ATTIC-CD
|
||
|
?ELS5: EQUAL? CLOSET-FLOOR,CELLAR \?ELS23
|
||
|
RETURN FOYER-CD
|
||
|
?ELS23: EQUAL? CLOSET-FLOOR,FOYER \?ELS25
|
||
|
RETURN UPSTAIRS-CD
|
||
|
?ELS25: RETURN ATTIC-CD
|
||
|
|
||
|
|
||
|
.FUNCT PROP-VAULT-F,RARG
|
||
|
EQUAL? RARG,M-LOOK \FALSE
|
||
|
PRINTI "This is a vault filled with props. You can see Aunt Hildegarde tied to a buzz saw. Cousin Herman is here, thinking of something rotten to do to you. To the east there is a chute."
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT CHUTE-F
|
||
|
EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \?ELS5
|
||
|
PRINTR "The chute leads down into darkness."
|
||
|
?ELS5: EQUAL? PRSA,V?ENTER \?ELS7
|
||
|
CALL DO-WALK,P?DOWN
|
||
|
RSTACK
|
||
|
?ELS7: EQUAL? PRSA,V?PUT \FALSE
|
||
|
EQUAL? PRSI,CHUTE \FALSE
|
||
|
REMOVE PRSO
|
||
|
PRINTI "You toss"
|
||
|
CALL TPRINT,PRSO
|
||
|
PRINTR " in the chute."
|
||
|
|
||
|
|
||
|
.FUNCT TO-CHUTE
|
||
|
ZERO? HERMAN-DOWN /?ELS5
|
||
|
PRINTI "Haven't you forgotten something?"
|
||
|
CRLF
|
||
|
RFALSE
|
||
|
?ELS5: PRINTI "Cousin Herman jumps in front of the chute then punches you in the stomach."
|
||
|
CRLF
|
||
|
RFALSE
|
||
|
|
||
|
|
||
|
.FUNCT CLOSET-REF-F
|
||
|
EQUAL? PRSA,V?SEARCH,V?ENTER,V?LOOK-INSIDE \?ELS5
|
||
|
EQUAL? HERE,CLOSET-TOP \?ELS5
|
||
|
PRINTR "You can't enter the closet from here."
|
||
|
?ELS5: EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \?ELS9
|
||
|
EQUAL? HERE,CLOSET \?ELS9
|
||
|
CALL V-LOOK
|
||
|
RSTACK
|
||
|
?ELS9: EQUAL? PRSA,V?SEARCH,V?LOOK-INSIDE \?ELS13
|
||
|
EQUAL? HERE,CLOSET /?ELS13
|
||
|
EQUAL? CLOSET-FLOOR,HERE \?ELS20
|
||
|
PRINTR "You'll have to enter the closet first."
|
||
|
?ELS20: PRINTR "You see an empty shaft."
|
||
|
?ELS13: EQUAL? PRSA,V?SEARCH \?ELS24
|
||
|
CALL PERFORM,V?SEARCH,GLOBAL-ROOM
|
||
|
RTRUE
|
||
|
?ELS24: EQUAL? PRSA,V?OPEN \?ELS26
|
||
|
EQUAL? HERE,CLOSET \?ELS31
|
||
|
CALL WHICH-DOOR?
|
||
|
JUMP ?CND27
|
||
|
?ELS31: EQUAL? HERE,FOYER \?ELS33
|
||
|
PUSH FOYER-CD
|
||
|
JUMP ?CND27
|
||
|
?ELS33: EQUAL? HERE,UPSTAIRS-HALL-MIDDLE \?ELS35
|
||
|
PUSH UPSTAIRS-CD
|
||
|
JUMP ?CND27
|
||
|
?ELS35: EQUAL? HERE,CELLAR \?ELS37
|
||
|
PUSH CELLAR-CD
|
||
|
JUMP ?CND27
|
||
|
?ELS37: PUSH ATTIC-CD
|
||
|
?CND27: CALL PERFORM,V?OPEN,STACK
|
||
|
RTRUE
|
||
|
?ELS26: EQUAL? PRSA,V?CLOSE \?ELS41
|
||
|
EQUAL? HERE,CLOSET \?ELS46
|
||
|
CALL WHICH-DOOR?
|
||
|
JUMP ?CND42
|
||
|
?ELS46: EQUAL? HERE,FOYER \?ELS48
|
||
|
PUSH FOYER-CD
|
||
|
JUMP ?CND42
|
||
|
?ELS48: EQUAL? HERE,UPSTAIRS-HALL-MIDDLE \?ELS50
|
||
|
PUSH UPSTAIRS-CD
|
||
|
JUMP ?CND42
|
||
|
?ELS50: EQUAL? HERE,CELLAR \?ELS52
|
||
|
PUSH CELLAR-CD
|
||
|
JUMP ?CND42
|
||
|
?ELS52: PUSH ATTIC-CD
|
||
|
?CND42: CALL PERFORM,V?CLOSE,STACK
|
||
|
RTRUE
|
||
|
?ELS41: EQUAL? PRSA,V?EXIT,V?DISEMBARK \?ELS56
|
||
|
CALL DO-WALK,P?OUT
|
||
|
RSTACK
|
||
|
?ELS56: EQUAL? PRSA,V?ENTER \FALSE
|
||
|
EQUAL? HERE,CLOSET \?ELS63
|
||
|
PRINTR "Look around."
|
||
|
?ELS63: CALL DO-WALK,P?IN
|
||
|
RSTACK
|
||
|
|
||
|
|
||
|
.FUNCT PEGS-F
|
||
|
EQUAL? PRSA,V?EXAMINE \?ELS5
|
||
|
PRINTR "There are three pegs mounted at an angle to the wall. To the left of the first peg is a hole the size of a peg. To the right of the third peg you can see where a peg has been sawed-off, flush with the wall."
|
||
|
?ELS5: EQUAL? PRSA,V?PUSH,V?PULL,V?MOVE /?THN8
|
||
|
EQUAL? PRSA,V?PUSH-DOWN,V?LOWER \FALSE
|
||
|
?THN8: PRINTR "You try to pull down all three pegs at once. They won't budge, but the closet makes a grinding noise."
|
||
|
|
||
|
|
||
|
.FUNCT PEG-F
|
||
|
EQUAL? PRSA,V?PUSH,V?PULL,V?MOVE /?THN6
|
||
|
EQUAL? PRSA,V?PUSH-DOWN,V?LOWER \?ELS5
|
||
|
?THN6: EQUAL? PRSO,BUCKET-PEG \?ELS12
|
||
|
FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?ELS12
|
||
|
PRINTI "The bucket is already holding"
|
||
|
CALL TPRINT,PRSO
|
||
|
PRINTR " down."
|
||
|
?ELS12: PRINTI "You pull the peg down to a horizontal position."
|
||
|
FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?CND17
|
||
|
PRINTI " You hear a grinding noise."
|
||
|
?CND17: CRLF
|
||
|
CRLF
|
||
|
PRINTI "As you release the peg, it pops back into its original 45-degree position."
|
||
|
FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?ELS24
|
||
|
CRLF
|
||
|
RTRUE
|
||
|
?ELS24: PRINTC 32
|
||
|
CALL ELEVATOR-OPERATOR,PRSO
|
||
|
RSTACK
|
||
|
?ELS5: EQUAL? PRSA,V?HANG-UP \?ELS28
|
||
|
EQUAL? PRSI,PEG-3,PEG-2,PEG-1 \?ELS28
|
||
|
EQUAL? PRSO,BUCKET /?ELS28
|
||
|
MOVE PRSO,HERE
|
||
|
PRINTI "The "
|
||
|
CALL DPRINT,PRSO
|
||
|
PRINTR " slips off and falls to the floor."
|
||
|
?ELS28: EQUAL? PRSA,V?EXAMINE \FALSE
|
||
|
FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?ELS35
|
||
|
PRINTI "The "
|
||
|
CALL DPRINT,PRSO
|
||
|
PRINTI " is in a horizontal position with a bucket hanging on it."
|
||
|
JUMP ?CND33
|
||
|
?ELS35: EQUAL? PRSO,BUCKET-PEG \?ELS37
|
||
|
PRINTI "The "
|
||
|
CALL DPRINT,PRSO
|
||
|
PRINTI " is pointing up at an angle with a bucket hanging on it."
|
||
|
JUMP ?CND33
|
||
|
?ELS37: PRINTI "You see a worn coat peg mounted at an angle."
|
||
|
?CND33: CRLF
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT PEG-0-F
|
||
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
||
|
PRINTR "It's a worn coat peg."
|
||
|
|
||
|
|
||
|
.FUNCT ELEVATOR-OPERATOR,PEG
|
||
|
EQUAL? HERE,FOYER,CELLAR,UPSTAIRS-HALL-MIDDLE /?THN4
|
||
|
EQUAL? HERE,ATTIC,SHAFT-BOTTOM \?CND1
|
||
|
?THN4: PRINTI "The closet door swings shut by itself."
|
||
|
CRLF
|
||
|
?CND1: EQUAL? PEG,PEG-1 \?ELS12
|
||
|
EQUAL? CLOSET-FLOOR,CELLAR /?THN9
|
||
|
?ELS12: EQUAL? PEG,PEG-2 \?ELS14
|
||
|
EQUAL? CLOSET-FLOOR,FOYER /?THN9
|
||
|
?ELS14: EQUAL? PEG,PEG-3 \?ELS8
|
||
|
EQUAL? CLOSET-FLOOR,UPSTAIRS-HALL-MIDDLE \?ELS8
|
||
|
?THN9: EQUAL? HERE,CLOSET,CLOSET-TOP \?CND6
|
||
|
EQUAL? HERE,CLOSET \?ELS22
|
||
|
CALL WHICH-DOOR?
|
||
|
FSET? STACK,OPENBIT \?ELS25
|
||
|
PRINTI "The closet door swings shut and you"
|
||
|
JUMP ?CND20
|
||
|
?ELS25: PRINTI "You"
|
||
|
JUMP ?CND20
|
||
|
?ELS22: CALL WHICH-DOOR?
|
||
|
FSET? STACK,OPENBIT \?ELS32
|
||
|
PRINTI "The shaft door swings shut and you"
|
||
|
JUMP ?CND20
|
||
|
?ELS32: PRINTI "You"
|
||
|
?CND20: PRINTI " feel the closet"
|
||
|
EQUAL? HERE,CLOSET /?CND35
|
||
|
PRINTI " ceiling"
|
||
|
?CND35: PRINTI " vibrate, then stop."
|
||
|
CRLF
|
||
|
JUMP ?CND6
|
||
|
?ELS8: EQUAL? HERE,CLOSET,CLOSET-TOP \?ELS42
|
||
|
EQUAL? HERE,CLOSET /?CND43
|
||
|
CRLF
|
||
|
?CND43: PRINTI "The closet "
|
||
|
EQUAL? HERE,CLOSET-TOP \?CND46
|
||
|
PRINTI "ceiling "
|
||
|
?CND46: PRINTI "begins to shake and rattle a bit"
|
||
|
EQUAL? HERE,CLOSET,CLOSET-TOP \?CND49
|
||
|
CALL WHICH-DOOR?
|
||
|
FSET? STACK,OPENBIT \?CND49
|
||
|
PRINTI " as the door swings shut"
|
||
|
?CND49: PRINTI ". You feel your stomach "
|
||
|
EQUAL? PEG,PEG-3 \?ELS56
|
||
|
PRINTI "drop to your knees as the closet "
|
||
|
EQUAL? HERE,CLOSET /?ELS59
|
||
|
PRINTI "moves up. You enter the top of the shaft, then the closet stops."
|
||
|
CRLF
|
||
|
CRLF
|
||
|
CALL GOTO,CLOSET-TOP
|
||
|
JUMP ?CND6
|
||
|
?ELS59: PRINTI "moves up, then stops."
|
||
|
CRLF
|
||
|
JUMP ?CND6
|
||
|
?ELS56: EQUAL? PEG,PEG-2 \?ELS63
|
||
|
EQUAL? CLOSET-FLOOR,CELLAR \?ELS63
|
||
|
PRINTI "drop to your knees as the closet "
|
||
|
EQUAL? HERE,CLOSET /?CND66
|
||
|
PRINTI "floor "
|
||
|
?CND66: PRINTI "moves up, then stops."
|
||
|
CRLF
|
||
|
EQUAL? HERE,CLOSET /?CND6
|
||
|
CRLF
|
||
|
CALL GOTO,CLOSET-TOP
|
||
|
JUMP ?CND6
|
||
|
?ELS63: EQUAL? PEG,PEG-2 \?ELS73
|
||
|
EQUAL? CLOSET-FLOOR,UPSTAIRS-HALL-MIDDLE \?ELS73
|
||
|
PRINTI "rising to your throat as the closet "
|
||
|
EQUAL? HERE,CLOSET /?CND76
|
||
|
PRINTI "floor "
|
||
|
?CND76: PRINTI "moves down, then stops."
|
||
|
CRLF
|
||
|
EQUAL? HERE,CLOSET /?CND6
|
||
|
CRLF
|
||
|
CALL GOTO,CLOSET-TOP
|
||
|
JUMP ?CND6
|
||
|
?ELS73: PRINTI "rising to your throat as the closet "
|
||
|
EQUAL? HERE,CLOSET /?CND84
|
||
|
PRINTI "floor "
|
||
|
?CND84: PRINTI "moves down, then stops."
|
||
|
CRLF
|
||
|
EQUAL? HERE,CLOSET /?CND6
|
||
|
CRLF
|
||
|
CALL GOTO,CLOSET-TOP
|
||
|
JUMP ?CND6
|
||
|
?ELS42: EQUAL? HERE,SHAFT-BOTTOM \?CND6
|
||
|
EQUAL? PEG,PEG-1 \?CND6
|
||
|
CALL JIGS-UP,STR?216
|
||
|
?CND6: EQUAL? PEG,PEG-1 \?ELS96
|
||
|
SET 'CLOSET-FLOOR,CELLAR
|
||
|
JUMP ?CND94
|
||
|
?ELS96: EQUAL? PEG,PEG-2 \?ELS98
|
||
|
SET 'CLOSET-FLOOR,FOYER
|
||
|
JUMP ?CND94
|
||
|
?ELS98: SET 'CLOSET-FLOOR,UPSTAIRS-HALL-MIDDLE
|
||
|
?CND94: FCLEAR ATTIC-CD,OPENBIT
|
||
|
FCLEAR UPSTAIRS-CD,OPENBIT
|
||
|
FCLEAR FOYER-CD,OPENBIT
|
||
|
FCLEAR CELLAR-CD,OPENBIT
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT BUCKET-F,OARG=0,FULL?=0
|
||
|
IN? PORTABLE-WATER,BUCKET /?PRD1
|
||
|
PUSH 0
|
||
|
JUMP ?PRD2
|
||
|
?PRD1: PUSH 1
|
||
|
?PRD2: SET 'FULL?,STACK
|
||
|
ZERO? OARG /?ELS7
|
||
|
ZERO? BUCKET-PEG /FALSE
|
||
|
EQUAL? OARG,M-OBJDESC? /TRUE
|
||
|
CRLF
|
||
|
PRINTI "A "
|
||
|
PRINTD BUCKET
|
||
|
PRINTI " is hanging from"
|
||
|
CALL TPRINT,BUCKET-PEG
|
||
|
IN? PORTABLE-WATER,BUCKET \?CND18
|
||
|
PRINTI ". The bucket "
|
||
|
CALL DESCRIBE-WATER-LEVEL
|
||
|
?CND18: PRINTC 46
|
||
|
RTRUE
|
||
|
?ELS7: EQUAL? PRSA,V?HANG-UP,V?PUT-ON \?ELS24
|
||
|
EQUAL? PRSI,PEG-3,PEG-2,PEG-1 \?ELS24
|
||
|
SET 'BUCKET-PEG,PRSI
|
||
|
FSET BUCKET,TRYTAKEBIT
|
||
|
MOVE BUCKET,HERE
|
||
|
IN? PORTABLE-WATER,BUCKET \?CND27
|
||
|
FSET PORTABLE-WATER,NDESCBIT
|
||
|
?CND27: IN? PORTABLE-WATER,BUCKET \?ELS38
|
||
|
GRTR? AMOUNT-OF-WATER,10 /?THN35
|
||
|
?ELS38: CALL WEIGHT,BUCKET
|
||
|
GRTR? STACK,20 \?ELS34
|
||
|
?THN35: FSET BUCKET,BUCKET-PEG-DOWN-BIT
|
||
|
PRINTI "As you hang"
|
||
|
CALL TPRINT,BUCKET
|
||
|
PRINTI " on"
|
||
|
CALL TPRINT,PRSI
|
||
|
PRINTR ", the peg lowers to a horizontal position and you feel the closet begin to vibrate."
|
||
|
?ELS34: PRINTI "You hang"
|
||
|
CALL TPRINT,BUCKET
|
||
|
PRINTR " on the peg."
|
||
|
?ELS24: EQUAL? PRSA,V?TAKE \?ELS42
|
||
|
EQUAL? PRSO,BUCKET \?ELS42
|
||
|
FSET? BUCKET,TRYTAKEBIT \?ELS42
|
||
|
CALL ITAKE
|
||
|
ZERO? STACK /TRUE
|
||
|
FSET? BUCKET,WETBIT \?ELS51
|
||
|
FCLEAR BUCKET,WETBIT
|
||
|
MOVE PORTABLE-WATER,BUCKET
|
||
|
SET 'AMOUNT-OF-WATER,26
|
||
|
PRINTI "Taken."
|
||
|
CRLF
|
||
|
CALL QUEUE,I-DRIP,1
|
||
|
RSTACK
|
||
|
?ELS51: FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?ELS53
|
||
|
FCLEAR BUCKET,TRYTAKEBIT
|
||
|
FCLEAR BUCKET,BUCKET-PEG-DOWN-BIT
|
||
|
FCLEAR PORTABLE-WATER,NDESCBIT
|
||
|
PRINTI "As you remove"
|
||
|
CALL TPRINT,BUCKET
|
||
|
PRINTC 44
|
||
|
CALL TPRINT,BUCKET-PEG
|
||
|
PRINTI " pops back into its original 45-degree position. "
|
||
|
CALL ELEVATOR-OPERATOR,BUCKET-PEG
|
||
|
SET 'BUCKET-PEG,FALSE-VALUE
|
||
|
RTRUE
|
||
|
?ELS53: FCLEAR BUCKET,TRYTAKEBIT
|
||
|
FCLEAR PORTABLE-WATER,NDESCBIT
|
||
|
SET 'BUCKET-PEG,FALSE-VALUE
|
||
|
PRINTR "Taken."
|
||
|
?ELS42: EQUAL? PRSA,V?EXAMINE,V?SEARCH,V?LOOK-INSIDE \?ELS57
|
||
|
PRINTI "It's an old metal bucket which is beginning to rust through on the bottom. It has a rusty handle and "
|
||
|
IN? PORTABLE-WATER,BUCKET \?ELS62
|
||
|
CALL DESCRIBE-WATER-LEVEL
|
||
|
PRINTR "."
|
||
|
?ELS62: FIRST? BUCKET \?ELS64
|
||
|
PRINTI "contains"
|
||
|
CALL DESCRIBE-NOTHING
|
||
|
ZERO? STACK \TRUE
|
||
|
RTRUE
|
||
|
?ELS64: PRINTR "it's empty."
|
||
|
?ELS57: ZERO? FULL? /?ELS71
|
||
|
EQUAL? PRSA,V?THROW \?ELS71
|
||
|
CALL PERFORM,V?DROP,PORTABLE-WATER
|
||
|
MOVE BUCKET,HERE
|
||
|
RTRUE
|
||
|
?ELS71: EQUAL? PRSA,V?STAND-ON \?ELS75
|
||
|
PRINTR "It wouldn't be a very elevating experience."
|
||
|
?ELS75: EQUAL? PRSA,V?DRINK-FROM,V?DRINK \?ELS77
|
||
|
ZERO? FULL? /?ELS82
|
||
|
CALL PERFORM,V?DRINK,WATER
|
||
|
RTRUE
|
||
|
?ELS82: CALL EMPTY-BUCKET
|
||
|
RSTACK
|
||
|
?ELS77: EQUAL? PRSA,V?EMPTY,V?POUR \?ELS87
|
||
|
ZERO? FULL? /?ELS92
|
||
|
CALL PERFORM,V?EMPTY,PORTABLE-WATER
|
||
|
RTRUE
|
||
|
?ELS92: CALL EMPTY-BUCKET
|
||
|
RSTACK
|
||
|
?ELS87: EQUAL? PRSA,V?PUT \?ELS97
|
||
|
EQUAL? PRSI,BUCKET \?ELS97
|
||
|
ZERO? BUCKET-PEG /?ELS104
|
||
|
PRINT PEG-IN-WAY
|
||
|
RTRUE
|
||
|
?ELS104: EQUAL? PRSO,WATER,PORTABLE-WATER \?ELS107
|
||
|
CALL PERFORM,V?FILL,BUCKET,WATER
|
||
|
RTRUE
|
||
|
?ELS107: ZERO? FULL? /FALSE
|
||
|
PRINTI "But"
|
||
|
CALL TPRINT,PRSO
|
||
|
PRINTR " would get all wet."
|
||
|
?ELS97: EQUAL? PRSA,V?CLOSE,V?OPEN \FALSE
|
||
|
CALL CANT-OPEN-CLOSE
|
||
|
RSTACK
|
||
|
|
||
|
|
||
|
.FUNCT DESCRIBE-WATER-LEVEL
|
||
|
PRINTI "is "
|
||
|
GRTR? AMOUNT-OF-WATER,21 \?ELS3
|
||
|
PRINTI "full"
|
||
|
JUMP ?CND1
|
||
|
?ELS3: GRTR? AMOUNT-OF-WATER,13 \?ELS5
|
||
|
PRINTI "more than half full"
|
||
|
JUMP ?CND1
|
||
|
?ELS5: GRTR? AMOUNT-OF-WATER,11 \?ELS7
|
||
|
PRINTI "about half full"
|
||
|
JUMP ?CND1
|
||
|
?ELS7: GRTR? AMOUNT-OF-WATER,3 \?ELS9
|
||
|
PRINTI "less than half full"
|
||
|
JUMP ?CND1
|
||
|
?ELS9: PRINTI "nearly empty"
|
||
|
?CND1: PRINTI " of water"
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT I-DRIP
|
||
|
CALL QUEUE,I-DRIP,-1
|
||
|
DEC 'AMOUNT-OF-WATER
|
||
|
IN? BUCKET,POND /?THN8
|
||
|
IN? BUCKET,PLAYER \?ELS3
|
||
|
EQUAL? HERE,INLET,ON-POOL-1,IN-POOL-1 /?THN8
|
||
|
EQUAL? HERE,UNDERPASS-1,UNDERPASS-2,IN-POOL-2 /?THN8
|
||
|
EQUAL? HERE,ON-POOL-2 \?ELS3
|
||
|
?THN8: SET 'AMOUNT-OF-WATER,26
|
||
|
RFALSE
|
||
|
?ELS3: ZERO? AMOUNT-OF-WATER \?CND1
|
||
|
FCLEAR PORTABLE-WATER,NDESCBIT
|
||
|
REMOVE PORTABLE-WATER
|
||
|
CALL DEQUEUE,I-DRIP
|
||
|
?CND1: CALL VISIBLE?,BUCKET
|
||
|
ZERO? STACK /?CND12
|
||
|
ZERO? LIT /?CND12
|
||
|
CRLF
|
||
|
PRINTI "The water "
|
||
|
EQUAL? AMOUNT-OF-WATER,25 \?ELS19
|
||
|
PRINTI "begin"
|
||
|
JUMP ?CND17
|
||
|
?ELS19: PRINTI "continue"
|
||
|
?CND17: PRINTI "s to dribble out of"
|
||
|
CALL TPRINT,BUCKET
|
||
|
PRINTC 46
|
||
|
ZERO? AMOUNT-OF-WATER \?ELS24
|
||
|
PRINTI " The bucket is now pretty much empty."
|
||
|
JUMP ?CND22
|
||
|
?ELS24: EQUAL? AMOUNT-OF-WATER,6,12,18 \?CND22
|
||
|
PRINTI " The bucket is now around "
|
||
|
EQUAL? AMOUNT-OF-WATER,18 \?ELS29
|
||
|
PRINTI "three-quarters"
|
||
|
JUMP ?CND27
|
||
|
?ELS29: EQUAL? AMOUNT-OF-WATER,12 \?ELS31
|
||
|
PRINTI "half"
|
||
|
JUMP ?CND27
|
||
|
?ELS31: PRINTI "one-quarter"
|
||
|
?CND27: PRINTI " full."
|
||
|
?CND22: CRLF
|
||
|
?CND12: FSET? BUCKET,BUCKET-PEG-DOWN-BIT \?CND34
|
||
|
LESS? AMOUNT-OF-WATER,10 \?CND34
|
||
|
CALL VISIBLE?,BUCKET
|
||
|
ZERO? STACK /?CND39
|
||
|
PRINTI "Suddenly"
|
||
|
CALL TPRINT,BUCKET-PEG
|
||
|
PRINTI " pops back into its original 45-degree position. "
|
||
|
?CND39: CALL ELEVATOR-OPERATOR,BUCKET-PEG
|
||
|
FCLEAR BUCKET,BUCKET-PEG-DOWN-BIT
|
||
|
RTRUE
|
||
|
?CND34: CALL VISIBLE?,BUCKET
|
||
|
ZERO? STACK \TRUE
|
||
|
RFALSE
|
||
|
|
||
|
|
||
|
.FUNCT EMPTY-BUCKET,OBJ
|
||
|
FIRST? BUCKET >OBJ \?ELS5
|
||
|
EQUAL? PRSA,V?DRINK-FROM \?ELS10
|
||
|
CALL PERFORM,V?DRINK,OBJ
|
||
|
RTRUE
|
||
|
?ELS10: NEXT? OBJ \?ELS15
|
||
|
PRINTI "The contents of the "
|
||
|
CALL DPRINT,BUCKET
|
||
|
PRINTI " fall"
|
||
|
JUMP ?CND13
|
||
|
?ELS15: PRINTI "Okay,"
|
||
|
CALL TPRINT,OBJ
|
||
|
PRINTI " falls"
|
||
|
?CND13: CALL ROB,BUCKET,HERE
|
||
|
PRINTR " out of it."
|
||
|
?ELS5: PRINTR "It's empty."
|
||
|
|
||
|
|
||
|
.FUNCT NOT-HOLDING-WATER?
|
||
|
IN? PORTABLE-WATER,BUCKET /FALSE
|
||
|
PRINTR "You're not carrying any water."
|
||
|
|
||
|
|
||
|
.FUNCT SHAFT-BOTTOM-F,RARG
|
||
|
EQUAL? RARG,M-LOOK \FALSE
|
||
|
PRINTI "You're standing at the bottom of a shaft. The door to the north is "
|
||
|
FSET? CELLAR-CD,OPENBIT \?ELS8
|
||
|
PRINTI "open"
|
||
|
JUMP ?CND6
|
||
|
?ELS8: PRINTI "closed"
|
||
|
?CND6: PRINTC 46
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT CLOSET-TOP-F,RARG
|
||
|
EQUAL? RARG,M-LOOK \FALSE
|
||
|
PRINTI "You're standing in a shaft on top of the closet. The door to the north is "
|
||
|
CALL WHICH-DOOR?
|
||
|
FSET? STACK,OPENBIT \?ELS8
|
||
|
PRINTI "open"
|
||
|
JUMP ?CND6
|
||
|
?ELS8: PRINTI "closed"
|
||
|
?CND6: PRINTC 46
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT CLOSET-TOP-EXIT,DOOR
|
||
|
CALL WHICH-DOOR? >DOOR
|
||
|
FSET? DOOR,OPENBIT /?ELS5
|
||
|
CALL THIS-IS-IT,DOOR
|
||
|
CALL ITS-CLOSED,DOOR
|
||
|
RFALSE
|
||
|
?ELS5: EQUAL? CLOSET-FLOOR,CELLAR \?ELS7
|
||
|
RETURN FOYER
|
||
|
?ELS7: EQUAL? CLOSET-FLOOR,FOYER \?ELS9
|
||
|
RETURN UPSTAIRS-HALL-MIDDLE
|
||
|
?ELS9: RETURN ATTIC
|
||
|
|
||
|
|
||
|
.FUNCT ATTIC-CD-F
|
||
|
EQUAL? PRSA,V?OPEN \FALSE
|
||
|
FSET? ATTIC-CD,OPENBIT /FALSE
|
||
|
EQUAL? CLOSET-FLOOR,ATTIC /FALSE
|
||
|
EQUAL? HERE,ATTIC \FALSE
|
||
|
CALL OPEN-DOOR-TO-SHAFT
|
||
|
FSET ATTIC-CD,OPENBIT
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT ATTIC-F,RARG
|
||
|
EQUAL? RARG,M-LOOK \FALSE
|
||
|
PRINTI "This is a dusty old attic with cobwebs hanging from the ceiling rafters. The attic is empty except for"
|
||
|
CALL APRINT,TRUNK
|
||
|
FSET? ATTIC-DOOR,OPENBIT \?ELS8
|
||
|
PRINTI ". A ladder leads down through an opening"
|
||
|
JUMP ?CND6
|
||
|
?ELS8: PRINTI " and a folding ladder attached to a panel"
|
||
|
?CND6: PRINTI " in the floor. To the south there is a"
|
||
|
FSET? ATTIC-CD,OPENBIT \?ELS13
|
||
|
PRINTI "n open"
|
||
|
JUMP ?CND11
|
||
|
?ELS13: PRINTI " closed"
|
||
|
?CND11: PRINTI " door."
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT TO-&-FROM-ATTIC
|
||
|
FSET? ATTIC-DOOR,OPENBIT \?ELS5
|
||
|
FSET? SKIS,WORNBIT \?ELS10
|
||
|
PRINTI "You can't fit through the opening wearing the skis."
|
||
|
CRLF
|
||
|
RFALSE
|
||
|
?ELS10: EQUAL? HERE,ATTIC \?ELS17
|
||
|
RETURN UPSTAIRS-HALL-MIDDLE
|
||
|
?ELS17: RETURN ATTIC
|
||
|
?ELS5: PRINTI "The "
|
||
|
CALL DPRINT,ATTIC-DOOR
|
||
|
PRINTI " is closed."
|
||
|
CRLF
|
||
|
RFALSE
|
||
|
|
||
|
|
||
|
.FUNCT ATTIC-CLOSET-ENTER-F
|
||
|
FSET? ATTIC-CD,OPENBIT /?ELS5
|
||
|
CALL ITS-CLOSED,ATTIC-CD
|
||
|
RFALSE
|
||
|
?ELS5: EQUAL? CLOSET-FLOOR,UPSTAIRS-HALL-MIDDLE \?ELS7
|
||
|
RETURN CLOSET-TOP
|
||
|
?ELS7: EQUAL? CLOSET-FLOOR,FOYER \?ELS9
|
||
|
PRINTI "You enter the shaft and plunge down a floor. A bit shaken, you find yourself at..."
|
||
|
CRLF
|
||
|
CRLF
|
||
|
RETURN CLOSET-TOP
|
||
|
?ELS9: CALL JIGS-UP,STR?217
|
||
|
RSTACK
|
||
|
|
||
|
|
||
|
.FUNCT TRUNK-F
|
||
|
EQUAL? PRSA,V?OPEN \?ELS5
|
||
|
FSET? TRUNK,TRUNK-LOCKED-BIT \?ELS5
|
||
|
PRINTR "It won't budge."
|
||
|
?ELS5: EQUAL? PRSA,V?MOVE,V?TAKE \FALSE
|
||
|
EQUAL? PRSO,TRUNK \FALSE
|
||
|
PRINT SPINACH
|
||
|
CRLF
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT FIRE-HYDRANT-F
|
||
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
||
|
PRINTI "Don't you recognize it? It's a prop "
|
||
|
CALL DPRINT,FIRE-HYDRANT
|
||
|
PRINTR " from ""Atomic Chihuahuas From Hell."" Uncle Buddy took a lot of heat for that film when two unlikely special interest groups, the Institute for Nuclear Power and the American Chihuahua Breeders Association, joined forces in an effort to have the film banned."
|
||
|
|
||
|
|
||
|
.FUNCT ATTIC-DOOR-F
|
||
|
EQUAL? PRSA,V?LOWER,V?OPEN,V?PUSH-DOWN /?THN8
|
||
|
EQUAL? PRSA,V?PUSH,V?PULL \?ELS5
|
||
|
?THN8: FSET? ATTIC-DOOR,OPENBIT /?ELS5
|
||
|
EQUAL? HERE,UPSTAIRS-HALL-MIDDLE \?ELS14
|
||
|
PRINTR "It won't budge from this side."
|
||
|
?ELS14: FSET ATTIC-DOOR,OPENBIT
|
||
|
FCLEAR ATTIC-DOOR,LOCKEDBIT
|
||
|
PRINTI "The panel in the floor drops downward and the ladder unfolds as it swings down into the upstairs hallway."
|
||
|
FSET? TRUNK,OPENBIT /?CND17
|
||
|
FCLEAR TRUNK,TRUNK-LOCKED-BIT
|
||
|
PRINTI " At the same time you hear a click from under"
|
||
|
CALL TPRINT,TRUNK
|
||
|
PRINTI "'s lid."
|
||
|
?CND17: CRLF
|
||
|
RTRUE
|
||
|
?ELS5: EQUAL? PRSA,V?EXAMINE \FALSE
|
||
|
FSET? ATTIC-DOOR,OPENBIT \?ELS26
|
||
|
PRINTR "The ladder hangs from an open panel in the ceiling, extended to the floor of the upstairs hallway."
|
||
|
?ELS26: EQUAL? HERE,ATTIC \FALSE
|
||
|
PRINTR "The wooden ladder is folded in thirds, with the first third attached to a panel in the floor."
|
||
|
|
||
|
|
||
|
.FUNCT AUNT-F
|
||
|
EQUAL? AUNT,WINNER \?ELS5
|
||
|
PRINTI """Shut up and get me off this buzz saw!"""
|
||
|
CRLF
|
||
|
CALL PCLEAR
|
||
|
RSTACK
|
||
|
?ELS5: EQUAL? PRSA,V?EXAMINE \?ELS7
|
||
|
PRINTR "She's strapped to the conveyor belt and moving closer to the buzz saw's spinning blade."
|
||
|
?ELS7: EQUAL? PRSA,V?CUT \?ELS9
|
||
|
EQUAL? PRSI,SWORD \?ELS9
|
||
|
CALL PERFORM,V?LAMP-OFF,SAW
|
||
|
RTRUE
|
||
|
?ELS9: EQUAL? PRSA,V?LET-GO,V?RESCUE,V?UNTIE \FALSE
|
||
|
EQUAL? PRSO,AUNT \FALSE
|
||
|
CALL PERFORM,V?LAMP-OFF,SAW
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT HERMAN-F
|
||
|
EQUAL? PRSA,V?TELL /?THN6
|
||
|
EQUAL? PRSA,V?ASK-ABOUT \?ELS5
|
||
|
EQUAL? PRSO,HERMAN \?ELS5
|
||
|
?THN6: PRINTI "Herman never was the talkative type."
|
||
|
CRLF
|
||
|
CALL PCLEAR
|
||
|
RSTACK
|
||
|
?ELS5: EQUAL? PRSA,V?KILL \?ELS11
|
||
|
ZERO? PRSI \?ELS11
|
||
|
FIRST? PLAYER \?ELS18
|
||
|
PRINTI "[with the "
|
||
|
FIRST? PLAYER /?KLU29
|
||
|
?KLU29: CALL DPRINT,STACK
|
||
|
PRINTC 93
|
||
|
CRLF
|
||
|
FIRST? PLAYER /?KLU30
|
||
|
?KLU30: CALL PERFORM,V?KILL,HERMAN,STACK
|
||
|
RTRUE
|
||
|
?ELS18: PRINTR "You slug Herman in the gut. It feels good after all these years."
|
||
|
?ELS11: EQUAL? PRSA,V?PUSH \?ELS22
|
||
|
EQUAL? PRSO,HERMAN \?ELS22
|
||
|
PRINTR "He pushes you right back."
|
||
|
?ELS22: EQUAL? PRSA,V?EXAMINE \?ELS26
|
||
|
PRINTR "It's Cousin Herman all right. A little older and a little chubbier. He still wears Batman slip-on tennis shoes."
|
||
|
?ELS26: EQUAL? PRSA,V?KICK,V?BITE \FALSE
|
||
|
PRINTR """%*&@#!,"" shouts Herman at the top of his lungs. You are aghast at Herman's profanity in the presence of your Aunt Hildegarde."
|
||
|
|
||
|
|
||
|
.FUNCT PROP-F,HERMAN-THING,PLAYER-THING
|
||
|
FIRST? HERMAN >HERMAN-THING /?KLU53
|
||
|
?KLU53: FIRST? PLAYER >PLAYER-THING /?KLU54
|
||
|
?KLU54:
|
||
|
?PRG1: ZERO? PLAYER-THING /?REP2
|
||
|
EQUAL? PLAYER-THING,TOUPEE,MASK,RING \?REP2
|
||
|
NEXT? PLAYER-THING >PLAYER-THING /?PRG1
|
||
|
JUMP ?PRG1
|
||
|
?REP2: EQUAL? PRSA,V?TAKE \?ELS14
|
||
|
EQUAL? PRSO,HERMAN-THING \?ELS19
|
||
|
PRINTI "You reach for"
|
||
|
CALL TPRINT,HERMAN-THING
|
||
|
PRINTI ", but "
|
||
|
CALL DPRINT,HERMAN
|
||
|
PRINTR " twists away from you."
|
||
|
?ELS19: ZERO? PLAYER-THING /?ELS21
|
||
|
PRINTI "You're already armed with"
|
||
|
CALL ARPRINT,PLAYER-THING
|
||
|
RSTACK
|
||
|
?ELS21: CALL PICK-REMOVE,PRSO,PROPS
|
||
|
RFALSE
|
||
|
?ELS14: EQUAL? PRSA,V?THROW,V?SHOOT \?ELS26
|
||
|
EQUAL? PRSI,HERMAN \?ELS26
|
||
|
CALL PERFORM,V?KILL,HERMAN,PRSO
|
||
|
RTRUE
|
||
|
?ELS26: EQUAL? PRSA,V?CUT,V?KILL \FALSE
|
||
|
EQUAL? PRSO,HERMAN \FALSE
|
||
|
INC 'HERMAN-HITS
|
||
|
ZERO? HERMAN-DOWN /?ELS37
|
||
|
CALL DEQUEUE,I-AUNT
|
||
|
PRINTI "With the hate of all those summers of his bullying built up, you let Herman have it with"
|
||
|
CALL TPRINT,PLAYER-THING
|
||
|
PRINTI ", killing him. At the same time you hear a scream not unlike one you would hear in an Uncle Buddy movie. As the tone of the saw blade changes you realize your Aunt Hildegarde has just taken her final bow. You stand and cry for a few minutes remembering the good times with your aunt and wishing you had done more to save her.
|
||
|
|
||
|
Later you find your way out of the prop vault. You go next door to Johnny's and call the police. Unfortunately it never occurred to you that with two dead bodies involved they wouldn't believe your story."
|
||
|
CRLF
|
||
|
CALL FINISH
|
||
|
RSTACK
|
||
|
?ELS37: EQUAL? HERMAN-HITS,3 \?ELS40
|
||
|
SET 'HERMAN-DOWN,TRUE-VALUE
|
||
|
SET 'AUNT-COUNT,6
|
||
|
CALL QUEUE,I-AUNT,2
|
||
|
CALL DEQUEUE,I-HERMAN-ATTACK
|
||
|
PRINTI "You "
|
||
|
EQUAL? PLAYER-THING,GUN \?ELS43
|
||
|
PRINTI "fire"
|
||
|
CALL TPRINT,GUN
|
||
|
PRINTI " hitting him in the shoulder."
|
||
|
JUMP ?CND41
|
||
|
?ELS43: PRINTI "give it your best, striking Herman."
|
||
|
?CND41: PRINTR " He drops to the ground. (Hmm, guess that wasn't a prop after all.) Slowly, he starts to come to his feet. The saw blade is less than an inch from the blue-gray hairs of Aunt Hildegarde's head!"
|
||
|
?ELS40: PRINTI "You "
|
||
|
EQUAL? PLAYER-THING,GUN \?ELS50
|
||
|
PRINTI "fire"
|
||
|
CALL TPRINT,GUN
|
||
|
PRINTI ", blasting Herman with smooth and creamy whipped cream. You toss the gun away in disgust. It sails into the chute."
|
||
|
CRLF
|
||
|
JUMP ?CND48
|
||
|
?ELS50: PRINTI "give it your best, striking Herman. The "
|
||
|
CALL DPRINT,PLAYER-THING
|
||
|
PRINTI " breaks into a hundred pieces. It was only a prop."
|
||
|
CRLF
|
||
|
?CND48: REMOVE PLAYER-THING
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT I-AUNT
|
||
|
CALL QUEUE,I-AUNT,1
|
||
|
INC 'AUNT-COUNT
|
||
|
EQUAL? AUNT-COUNT,7 \?ELS5
|
||
|
CRLF
|
||
|
PRINTI "You hear what sounds like an old woman being run through a buzz saw. Suddenly you realize -- that old woman was your Aunt Hildegarde. Cousin Herman stares at the saw blade in horror then turns and dives into the chute, disappearing. You stand there as the blade continues to cut, wishing you had done more to save her.
|
||
|
|
||
|
Later you find your way out of the prop vault. You go next door to Johnny's and call the police. When they arrive they have a difficult time believing your story. You're advised to call a good lawyer."
|
||
|
CRLF
|
||
|
CALL FINISH
|
||
|
RSTACK
|
||
|
?ELS5: CRLF
|
||
|
PRINTI "Your Aunt Hildegarde, strapped to the conveyor belt, is "
|
||
|
GET AUNT-DISTANCE,AUNT-COUNT
|
||
|
PRINT STACK
|
||
|
PRINTI " the saw blade. "
|
||
|
ZERO? HERMAN-HITS /?ELS10
|
||
|
EQUAL? AUNT-COUNT,1 \?ELS14
|
||
|
PRINTI """Herman, dear, please turn off the buzz saw and untie me,"" says Aunt Hildegarde politely."
|
||
|
JUMP ?CND8
|
||
|
?ELS14: EQUAL? AUNT-COUNT,2 \?ELS16
|
||
|
PRINTI """Herman, that's no way to treat your cousin,"" admonishes Aunt Hildegarde."
|
||
|
JUMP ?CND8
|
||
|
?ELS16: EQUAL? AUNT-COUNT,3 \?ELS18
|
||
|
PRINTI """I'm just glad your Uncle Buddy isn't alive to see this,"" says Aunt Hildegarde with resignation."
|
||
|
JUMP ?CND8
|
||
|
?ELS18: EQUAL? AUNT-COUNT,4 \?ELS20
|
||
|
PRINTI """Herman, enough is enough. You are in big trouble, buster. Pumpkin, untie me then run and get your Uncle Buddy's belt,"" orders Aunt Hildegarde."
|
||
|
JUMP ?CND8
|
||
|
?ELS20: EQUAL? AUNT-COUNT,5 \?ELS22
|
||
|
PRINTI """Now you two stop that horseplay and get me off this contraption,"" demands Aunt Hildegarde."
|
||
|
JUMP ?CND8
|
||
|
?ELS22: EQUAL? AUNT-COUNT,6 \?CND8
|
||
|
PRINTI """Pumpkin! Help!"" screams Aunt Hildegarde over the roar of the buzz saw."
|
||
|
JUMP ?CND8
|
||
|
?ELS10: PRINTI """Herman, stop this silly game this instant and untie me,"" demands Aunt Hildegarde."
|
||
|
?CND8: CRLF
|
||
|
RTRUE
|
||
|
|
||
|
|
||
|
.FUNCT SAW-F,HERMAN-THING
|
||
|
FIRST? HERMAN >HERMAN-THING /?KLU21
|
||
|
?KLU21: EQUAL? PRSA,V?LAMP-OFF \?ELS5
|
||
|
ZERO? HERMAN-DOWN /?ELS10
|
||
|
ADD SCORE,20 >SCORE
|
||
|
PRINTI "The conveyor belt stops and the buzz saw's blade begins to slow. As you untie your Aunt Hildegarde, Herman races toward the chute and jumps inside, disappearing. You hear his squeaky laugh trail off in the distance. Aunt Hildegarde gets up from the buzz saw rubbing the back of her head. Though a bit shaken, she explains she had been watching you while you searched for the ""treasures.""
|
||
|
|
||
|
""As I followed your progress I began to realize you and I were not the only ones on the estate. My suspicions were confirmed when I received a rap on the skull. The next thing I knew I was being tied to this buzz saw by your Cousin Herman,"" says Aunt Hildegarde. ""I guess he couldn't stand to see you inherit the family fortune. Well, it's all yours now. I knew you could do it,"" says Aunt Hildegarde with satisfaction.
|
||
|
|
||
|
""I'm sorry I put you through all this, Pumpkin, but your Uncle Buddy and I had to be sure that whoever inherited the estate and the studio would be clever enough to handle it all. The only way I could be sure the stipulations in my will would be carried out would be to oversee it myself, so I faked my death,"" says Aunt Hildegarde, hugging you so tight she squeezes the air out of your lungs. ""Tomorrow we'll go see my lawyer and he'll take care of all the paper work. I know you'll take good care of Hildebud and the studio. As for me, I'm sure it won't be long before the press discovers I'm alive. I plan to go to the south of France for a rest while the story leaks out. It will be great publicity for the studio,"" says Aunt Hildegarde. Then she adds, ""And let's hope we've seen the last of your Cousin Herman."""
|
||
|
CRLF
|
||
|
CALL FINISH
|
||
|
RSTACK
|
||
|
?ELS10: ZERO? HERMAN-THING /?ELS13
|
||
|
REMOVE HERMAN-THING
|
||
|
PRINTI "Cousin Herman hits you with"
|
||
|
CALL TPRINT,HERMAN-THING
|
||
|
PRINTI ", driving you away from the buzz saw. The "
|
||
|
CALL DPRINT,HERMAN-THING
|
||
|
PRINTR " crumbles; it was only a prop."
|
||
|
?ELS13: PRINTR "Cousin Herman slugs you in the stomach, pushing you away from the buzz saw."
|
||
|
?ELS5: EQUAL? PRSA,V?LAMP-ON \?ELS18
|
||
|
PRINTI "It's already turned on!"
|
||
|
RTRUE
|
||
|
?ELS18: EQUAL? PRSA,V?EXAMINE \FALSE
|
||
|
PRINTR "It's a large, steel blade that seems to spin faster as Aunt Hildegarde moves closer to it."
|
||
|
|
||
|
|
||
|
.FUNCT I-HERMAN-ATTACK,NEXT-PROP,FOO,HERMAN-THING
|
||
|
FIRST? HERMAN >HERMAN-THING /?KLU23
|
||
|
?KLU23: CALL QUEUE,I-HERMAN-ATTACK,-1
|
||
|
ZERO? HERMAN-THING /?ELS5
|
||
|
REMOVE HERMAN-THING
|
||
|
CRLF
|
||
|
PRINTI "Cousin Herman "
|
||
|
EQUAL? HERMAN-THING,GUN \?ELS9
|
||
|
PRINTI "fires"
|
||
|
JUMP ?CND7
|
||
|
?ELS9: EQUAL? HERMAN-THING,BAG \?ELS11
|
||
|
PRINTI "throws"
|
||
|
JUMP ?CND7
|
||
|
?ELS11: PRINTI "swings"
|
||
|
?CND7: PRINTI " the "
|
||
|
CALL DPRINT,HERMAN-THING
|
||
|
PRINTI ", "
|
||
|
EQUAL? HERMAN-THING,GUN \?ELS18
|
||
|
PRINTR "covering you with whipped cream. Herman tosses the gun in the chute."
|
||
|
?ELS18: PRINTI "striking you. The "
|
||
|
CALL DPRINT,HERMAN-THING
|
||
|
PRINTR " crumbles; it was only a prop."
|
||
|
?ELS5: CALL PICK-ONE,PROPS
|
||
|
MOVE STACK,HERMAN
|
||
|
FIRST? HERMAN >HERMAN-THING /?KLU24
|
||
|
?KLU24: CRLF
|
||
|
PRINTI "Cousin Herman grabs the "
|
||
|
CALL DPRINT,HERMAN-THING
|
||
|
PRINTR "."
|
||
|
|
||
|
.ENDI
|