4862 lines
116 KiB
Plaintext
4862 lines
116 KiB
Plaintext
|
|
|
|
.FUNCT I-LANTERN,V
|
|
CALL2 VISIBLE?,LANTERN >V
|
|
DLESS? 'LAMP-LIFE,1 \?CCL3
|
|
SET 'LAMP-LIFE,0
|
|
ICALL2 DEQUEUE,I-LANTERN
|
|
FCLEAR LANTERN,LIGHTED
|
|
ICALL REPLACE-ADJ?,LANTERN,W?LIGHTED,W?DARK
|
|
ZERO? V /FALSE
|
|
SET 'P-IT-OBJECT,LANTERN
|
|
PRINTI " The "
|
|
PRINTD LANTERN
|
|
PRINTI "'s light flickers and goes out."
|
|
CRLF
|
|
ICALL1 SAY-IF-HERE-LIT
|
|
RTRUE
|
|
?CCL3: ZERO? V /FALSE
|
|
EQUAL? LAMP-LIFE,20 \?CCL9
|
|
SET 'P-IT-OBJECT,LANTERN
|
|
PRINTI " The light from the "
|
|
PRINTD LANTERN
|
|
PRINTR " is getting dimmer."
|
|
?CCL9: EQUAL? LAMP-LIFE,10 \FALSE
|
|
SET 'P-IT-OBJECT,LANTERN
|
|
PRINTI " The "
|
|
PRINTD LANTERN
|
|
PRINTR "'s glow is fading rapidly."
|
|
|
|
|
|
.FUNCT I-CRAB,L,DIR,TBL,DEST,DAMAGE
|
|
LOC CRAB >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP CRAB,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
PRINTI "Something falls to your feet with a "
|
|
ICALL2 ITALICIZE,STR?576
|
|
PRINT COMMA-AND
|
|
ZERO? LIT? \?CCL8
|
|
PRINTI "a shadow"
|
|
JUMP ?CND6
|
|
?CCL8: ICALL2 THE-PRINT,CRAB
|
|
?CND6: PRINT STR?577
|
|
PRINTI "darkness."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,CRAB
|
|
MOVE CROWN,HERE
|
|
SET 'P-IT-OBJECT,CROWN
|
|
RTRUE
|
|
?CCL5: FSET? CRAB,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,CRAB
|
|
FSET? CRAB,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ZERO? LIT? \?CND12
|
|
ICALL1 DARK-MOVES
|
|
RTRUE
|
|
?CND12: EQUAL? HERE,THRONE-ROOM \?CND14
|
|
FSET? CRAB,TOUCHED /?CND14
|
|
FSET CRAB,TOUCHED
|
|
ICALL2 CTHE-PRINT,CRAB
|
|
PRINTI "'s antennae snap to alert as you enter. He rises from "
|
|
ICALL2 THE-PRINT,THRONE
|
|
PRINTI " and charges across "
|
|
ICALL2 THE-PRINT,FLOOR
|
|
PRINTR ", claws snapping with anticipation!"
|
|
?CND14: ICALL2 WHIRLS,CRAB
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,CRAB
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,CRAB >DAMAGE
|
|
PRINT TAB
|
|
ZERO? DAMAGE /?CCL22
|
|
ZERO? LIT? \?CCL25
|
|
PRINTI "Something pinches you"
|
|
JUMP ?CND23
|
|
?CCL25: ICALL2 CTHE-PRINT,CRAB
|
|
CALL2 PICK-NEXT,CRAB-ATTACKS
|
|
PRINT STACK
|
|
?CND23: ICALL OUCH,CRAB,DAMAGE
|
|
RTRUE
|
|
?CCL22: ZERO? LIT? \?CND20
|
|
ICALL1 DARK-MOVES
|
|
RTRUE
|
|
?CND20: ICALL2 CTHE-PRINT,CRAB
|
|
CALL2 PICK-NEXT,CRAB-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,CRAB >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
ZERO? LIT? \?CCL31
|
|
PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
FSET? CRAB,SEEN \?CND32
|
|
PRINTI " else"
|
|
?CND32: PRINTI " scuttle "
|
|
JUMP ?CND29
|
|
?CCL31: FSET? CRAB,SEEN \?CCL36
|
|
PRINT XTHE
|
|
JUMP ?CND34
|
|
?CCL36: PRINT XA
|
|
?CND34: ICALL2 DPRINT,CRAB
|
|
PRINTI " scuttles "
|
|
?CND29: FSET CRAB,SEEN
|
|
ICALL2 PASSAGE,DIR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT PASSAGE,DIR
|
|
PRINTI "in from the "
|
|
PRINTB DIR
|
|
PRINTR " passage!"
|
|
|
|
|
|
.FUNCT I-RAT,L,DIR,TBL,DEST,DAMAGE
|
|
LOC RAT >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP RAT,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
ZERO? LIT? \?CCL8
|
|
PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
PRINTI " retreat"
|
|
JUMP ?CND6
|
|
?CCL8: PRINTI "Mortally wounded, "
|
|
ICALL2 THE-PRINT,RAT
|
|
PRINTI " retreats"
|
|
?CND6: PRINTI " into the darkness."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,RAT
|
|
RTRUE
|
|
?CCL5: FSET? RAT,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,RAT
|
|
FSET? RAT,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ZERO? LIT? \?CND12
|
|
ICALL1 DARK-MOVES
|
|
RTRUE
|
|
?CND12: ICALL2 WHIRLS,RAT
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,RAT
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,RAT >DAMAGE
|
|
PRINT TAB
|
|
ZERO? DAMAGE /?CCL18
|
|
ZERO? LIT? \?CCL21
|
|
PRINTI "Something bites you"
|
|
JUMP ?CND19
|
|
?CCL21: ICALL2 CTHE-PRINT,RAT
|
|
CALL2 PICK-NEXT,RAT-ATTACKS
|
|
PRINT STACK
|
|
?CND19: ICALL OUCH,RAT,DAMAGE
|
|
RTRUE
|
|
?CCL18: ZERO? LIT? \?CND16
|
|
ICALL1 DARK-MOVES
|
|
RTRUE
|
|
?CND16: ICALL2 CTHE-PRINT,RAT
|
|
CALL2 PICK-NEXT,RAT-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,RAT >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
ZERO? LIT? \?CCL27
|
|
PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
PRINTI " scurry "
|
|
JUMP ?CND25
|
|
?CCL27: FSET? RAT,SEEN \?CCL30
|
|
PRINT XTHE
|
|
JUMP ?CND28
|
|
?CCL30: PRINT XA
|
|
?CND28: ICALL2 DPRINT,RAT
|
|
PRINTI " scurries "
|
|
?CND25: FSET RAT,SEEN
|
|
ICALL2 PASSAGE,DIR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-SNIPE,L,DIR,TBL,DEST,DAMAGE
|
|
LOC SNIPE >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP SNIPE,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
PRINTI "Battered beyond endurance, "
|
|
ICALL2 THE-PRINT,SNIPE
|
|
PRINT STR?577
|
|
PRINTI "fog."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,SNIPE
|
|
RTRUE
|
|
?CCL5: FSET? SNIPE,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,SNIPE
|
|
FSET? SNIPE,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 WHIRLS,SNIPE
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,SNIPE
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,SNIPE >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SNIPE
|
|
ZERO? DAMAGE /?CND11
|
|
CALL2 PICK-NEXT,SNIPE-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,SNIPE,DAMAGE
|
|
RTRUE
|
|
?CND11: CALL2 PICK-NEXT,SNIPE-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,SNIPE >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? SNIPE,SEEN \?CCL17
|
|
PRINT XTHE
|
|
JUMP ?CND15
|
|
?CCL17: PRINT XA
|
|
?CND15: FSET SNIPE,SEEN
|
|
ICALL2 DPRINT,SNIPE
|
|
PRINTI " streaks out of the mist!"
|
|
CRLF
|
|
ICALL2 TOPPLED?,SNIPE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-VAPOR,L,DIR,DAMAGE
|
|
LOC VAPOR >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP VAPOR,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,VAPOR
|
|
PRINT STR?578
|
|
PRINT PERIOD
|
|
ICALL2 NEXT-MONSTER,SNIPE
|
|
ICALL2 KILL-MONSTER,VAPOR
|
|
RTRUE
|
|
?CCL5: FSET? VAPOR,SURPRISED \?CCL7
|
|
ICALL2 SEE-MONSTER,VAPOR
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,VAPOR
|
|
PRINTI " giggles when it sees you."
|
|
CRLF
|
|
ICALL2 TOPPLED?,VAPOR
|
|
RTRUE
|
|
?CCL7: CALL2 TOPPLED?,VAPOR
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NEXT-ENDURANCE?,VAPOR
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND9
|
|
CALL1 VAPOR-SNATCH?
|
|
ZERO? STACK \TRUE
|
|
?CND9: CALL2 MONSTER-STRIKES?,VAPOR >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,VAPOR
|
|
ZERO? DAMAGE /?CND13
|
|
CALL2 PICK-NEXT,VAPOR-TICKLES
|
|
PRINT STACK
|
|
PRINTC PER
|
|
ZERO? STATIC \?CND15
|
|
PRINTI " """
|
|
CALL2 PICK-NEXT,VAPOR-SNEERS
|
|
PRINT STACK
|
|
PRINTI "!"""
|
|
?CND15: CRLF
|
|
CALL MSPARK?,VAPOR,DAMAGE
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
?CND13: CALL2 PICK-NEXT,VAPOR-DOINGS
|
|
PRINT STACK
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND17
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: PRINTI ". """
|
|
CALL2 PICK-NEXT,VAPOR-SNEERS
|
|
PRINT STACK
|
|
PRINTR "!"""
|
|
?CND1: CALL2 MOVE-MONSTER?,VAPOR >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? VAPOR,SEEN \?CCL23
|
|
PRINT XTHE
|
|
JUMP ?CND21
|
|
?CCL23: PRINTI "Without warning, an "
|
|
?CND21: FSET VAPOR,SEEN
|
|
ICALL2 DPRINT,VAPOR
|
|
PRINTI " coalesces out of the surrounding mist"
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND24
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND24: PRINTI ". """
|
|
CALL2 PICK-NEXT,VAPOR-SNEERS
|
|
PRINT STACK
|
|
PRINTI "!"""
|
|
CRLF
|
|
ICALL2 TOPPLED?,VAPOR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT VAPOR-SNATCH?,ANY,OBJ,NXT,RM,LEN,X
|
|
GETB MOOR-ROOMS,0 >LEN
|
|
FIRST? PLAYER >OBJ \?CND1
|
|
?PRG3: NEXT? OBJ >NXT /?BOGUS5
|
|
?BOGUS5: FSET? OBJ,NODESC /?CND6
|
|
FSET? OBJ,WIELDED /?CTR8
|
|
FSET? OBJ,WORN \?CCL9
|
|
?CTR8: ZERO? ANY \?CND6
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,VAPOR
|
|
PRINTI " tries to snatch "
|
|
ICALL2 SAY-YOUR,OBJ
|
|
PRINTI " from your grasp, "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL16
|
|
PRINTI "and nearly succeeds"
|
|
JUMP ?CND14
|
|
?CCL16: PRINTI "but fails"
|
|
?CND14: RANDOM 100
|
|
LESS? 50,STACK /?CND17
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: INC 'ANY
|
|
?CND6: SET 'OBJ,NXT
|
|
ZERO? OBJ \?PRG3
|
|
?CND1: ZERO? ANY /?CND29
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL9: FSET? OBJ,TAKEABLE \?CND6
|
|
?PRG20: RANDOM LEN
|
|
GETB MOOR-ROOMS,STACK >RM
|
|
EQUAL? RM,HERE /?PRG20
|
|
FCLEAR OBJ,WORN
|
|
FCLEAR OBJ,WIELDED
|
|
MOVE OBJ,RM
|
|
MOVE VAPOR,RM
|
|
FSET VAPOR,SURPRISED
|
|
CALL FIND-IN?,HERE,MONSTER >LAST-MONSTER
|
|
SET 'LAST-MONSTER-DIR,FALSE-VALUE
|
|
SET 'P-IT-OBJECT,NOT-HERE-OBJECT
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
ZERO? ANY /?CCL26
|
|
PRINTI ". Instead, it encircles "
|
|
JUMP ?CND24
|
|
?CCL26: PRINT TAB
|
|
CALL2 PICK-NEXT,VAPOR-LAUGHS
|
|
PRINT STACK
|
|
PRINTI ", "
|
|
ICALL2 THE-PRINT,VAPOR
|
|
PRINTI " snatches "
|
|
?CND24: ICALL2 SAY-YOUR,OBJ
|
|
PRINTR " and spirits it away!"
|
|
?CND29: GET STATS,LUCK >X
|
|
LESS? X,2 /?PRG34
|
|
RANDOM 100
|
|
LESS? X,STACK \FALSE
|
|
?PRG34: RANDOM LEN
|
|
GETB MOOR-ROOMS,STACK >RM
|
|
EQUAL? RM,HERE /?PRG34
|
|
FSET VAPOR,SURPRISED
|
|
PRINT TAB
|
|
CALL2 PICK-NEXT,VAPOR-LAUGHS
|
|
PRINT STACK
|
|
PRINTI ", "
|
|
ICALL2 THE-PRINT,VAPOR
|
|
PRINTI " grabs you by the ankles and lifts you high into the air!"
|
|
CRLF
|
|
ZERO? VERBOSITY /?CND38
|
|
CRLF
|
|
?CND38: ICALL2 GOTO,RM
|
|
GET STATS,ENDURANCE >X
|
|
GRTR? X,5 \?CCL42
|
|
SET 'X,-5
|
|
JUMP ?CND40
|
|
?CCL42: SUB X,1
|
|
SUB 0,STACK >X
|
|
?CND40: ICALL2 UPDATE-STAT,X
|
|
PRINT TAB
|
|
PRINTR "You slowly recover your bearings."
|
|
|
|
|
|
.FUNCT I-SPIDER,L,DIR,TBL,DEST,DAMAGE
|
|
LOC SPIDER >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP SPIDER,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SPIDER
|
|
PRINT STR?579
|
|
PRINTI "its wounds oozing with vile ichors."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,SPIDER
|
|
RTRUE
|
|
?CCL5: FSET? SPIDER,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,SPIDER
|
|
FSET? SPIDER,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 WHIRLS,SPIDER
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,SPIDER
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,SPIDER >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SPIDER
|
|
ZERO? DAMAGE /?CND11
|
|
CALL2 PICK-NEXT,SPIDER-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,SPIDER,DAMAGE
|
|
RTRUE
|
|
?CND11: CALL2 PICK-NEXT,SPIDER-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,SPIDER >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? SPIDER,SEEN \?CCL17
|
|
PRINT XTHE
|
|
JUMP ?CND15
|
|
?CCL17: FSET SPIDER,SEEN
|
|
PRINT XA
|
|
?CND15: ICALL2 DPRINT,SPIDER
|
|
PRINTI " crawls in from the "
|
|
PRINTB DIR
|
|
PRINTR " passage!"
|
|
|
|
|
|
.FUNCT I-SLUG,L,DIR,TBL,DEST,DAMAGE
|
|
LOC SLUG >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP SLUG,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SLUG
|
|
PRINT STR?579
|
|
PRINTI "oozing something wet."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,SLUG
|
|
RTRUE
|
|
?CCL5: FSET? SLUG,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,SLUG
|
|
FSET? SLUG,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 WHIRLS,SLUG
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,SLUG
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,SLUG >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SLUG
|
|
ZERO? DAMAGE /?CND11
|
|
CALL2 PICK-NEXT,SLUG-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,SLUG,DAMAGE
|
|
RTRUE
|
|
?CND11: CALL2 PICK-NEXT,SLUG-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,SLUG >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? SLUG,SEEN \?CCL17
|
|
PRINT XTHE
|
|
JUMP ?CND15
|
|
?CCL17: FSET SLUG,SEEN
|
|
PRINT XA
|
|
?CND15: ICALL2 DPRINT,SLUG
|
|
PRINTI " oozes "
|
|
ICALL2 PASSAGE,DIR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-WORM,L,DIR,TBL,DEST,DAMAGE
|
|
LOC WORM >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP WORM,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINTI " Hissing with humiliation, "
|
|
ICALL2 THE-PRINT,WORM
|
|
PRINTI " slithers away into the undergrowth."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,WORM
|
|
RTRUE
|
|
?CCL5: FSET? WORM,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,WORM
|
|
FSET? WORM,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WORM
|
|
PRINTI " rears up as it sees you."
|
|
CRLF
|
|
ICALL2 TOPPLED?,WORM
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,WORM
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WORM
|
|
IN? PLAYER,MAW \?CND11
|
|
PRINT STR?580
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND13
|
|
PRINTI ", sharpening its fangs"
|
|
?CND13: PRINT PERIOD
|
|
RTRUE
|
|
?CND11: CALL2 MONSTER-STRIKES?,WORM >DAMAGE
|
|
ZERO? DAMAGE /?CND15
|
|
CALL2 PICK-NEXT,WORM-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,WORM,DAMAGE
|
|
RTRUE
|
|
?CND15: CALL2 PICK-NEXT,WORM-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,WORM >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WORM
|
|
PRINT STR?581
|
|
PRINTB DIR
|
|
PRINTC 33
|
|
CRLF
|
|
ICALL2 TOPPLED?,WORM
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-CROC,DAMAGE
|
|
IN? CROC,HERE \?CND1
|
|
GETP CROC,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,CROC
|
|
PRINTI " drags itself off into the bushes."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,CROC
|
|
RTRUE
|
|
?CCL5: FSET? CROC,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,CROC
|
|
FSET? CROC,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 WHIRLS,CROC
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,CROC
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,CROC
|
|
IN? PLAYER,MAW \?CND11
|
|
PRINT STR?580
|
|
ICALL1 CHOPS
|
|
RTRUE
|
|
?CND11: CALL2 MONSTER-STRIKES?,CROC >DAMAGE
|
|
ZERO? DAMAGE /?CND13
|
|
CALL2 PICK-NEXT,JAW-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,CROC,DAMAGE
|
|
RTRUE
|
|
?CND13: CALL2 PICK-NEXT,JAW-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 CHARGING?,CROC
|
|
RSTACK
|
|
|
|
|
|
.FUNCT CHARGING?,OBJ,DIR
|
|
CALL2 MOVE-MONSTER?,OBJ >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? OBJ,SEEN \?CCL6
|
|
PRINT XTHE
|
|
JUMP ?CND4
|
|
?CCL6: FSET OBJ,SEEN
|
|
PRINT XA
|
|
?CND4: ICALL2 DPRINT,OBJ
|
|
PRINTI " charges in from the "
|
|
PRINTB DIR
|
|
PRINTC 33
|
|
CRLF
|
|
ICALL2 TOPPLED?,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CHOPS
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND1
|
|
PRINTI ", licking its chops"
|
|
?CND1: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-HOUND,DAMAGE
|
|
IN? HOUND,HERE \?CND1
|
|
GETP HOUND,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINTI " Whining with pain, "
|
|
ICALL2 THE-PRINT,HOUND
|
|
PRINTI " limps away into the forest."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,HOUND
|
|
RTRUE
|
|
?CCL5: FSET? HOUND,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,HOUND
|
|
FSET? HOUND,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,HOUND
|
|
PRINTI " bares its fangs when it sees you."
|
|
CRLF
|
|
ICALL2 TOPPLED?,HOUND
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,HOUND
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,HOUND
|
|
IN? PLAYER,POOL \?CND11
|
|
PRINTI " prowls the edge of "
|
|
ICALL2 THE-PRINT,POOL
|
|
ICALL1 CHOPS
|
|
RTRUE
|
|
?CND11: CALL2 MONSTER-STRIKES?,HOUND >DAMAGE
|
|
ZERO? DAMAGE /?CND13
|
|
CALL2 PICK-NEXT,JAW-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,HOUND,DAMAGE
|
|
RTRUE
|
|
?CND13: CALL2 PICK-NEXT,JAW-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 CHARGING?,HOUND
|
|
RSTACK
|
|
|
|
|
|
.FUNCT I-PUPP,L,PL,DIR,TBL,DEST,DAMAGE
|
|
LOC PUPP >L
|
|
EQUAL? L,HERE \?CND1
|
|
GETP PUPP,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINTI " With a furious snarl, "
|
|
ICALL2 THE-PRINT,PUPP
|
|
PRINT STR?577
|
|
PRINTI "forest."
|
|
CRLF
|
|
ICALL2 NEXT-MONSTER,HOUND
|
|
ICALL2 KILL-MONSTER,PUPP
|
|
RTRUE
|
|
?CCL5: FSET? PUPP,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,PUPP
|
|
FSET? PUPP,SLEEPING /?CND3
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,PUPP
|
|
PRINTI " grins evilly when it sees you."
|
|
CRLF
|
|
ICALL2 TOPPLED?,PUPP
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,PUPP
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NEXT-ENDURANCE?,PUPP
|
|
LOC PLAYER >PL
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,PUPP
|
|
EQUAL? PL,HERE /?CND11
|
|
CALL2 PICK-NEXT,PUPP-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND11: CALL2 MONSTER-STRIKES?,PUPP >DAMAGE
|
|
CALL2 PICK-NEXT,PUPP-HITS
|
|
PRINT STACK
|
|
ZERO? DAMAGE \?CND13
|
|
PRINTR ", but you manage to ignore it."
|
|
?CND13: PRINT PERIOD
|
|
ICALL2 UPDATE-STAT,DAMAGE
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,PUPP >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? PUPP,SEEN \?CND17
|
|
ICALL2 CTHE-PRINT,PUPP
|
|
PRINTI " swings in from the "
|
|
PRINTB DIR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: FSET PUPP,SEEN
|
|
SET 'LAST-MONSTER-DIR,P-WALK-DIR
|
|
ICALL2 PRINTCA,PUPP
|
|
PRINTI " drops out of the treetops!"
|
|
CRLF
|
|
ICALL2 TOPPLED?,PUPP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-DEAD,DIR,DAMAGE
|
|
IN? DEAD,HERE \?CND1
|
|
GETP DEAD,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINTI " Wailing with self-pity, "
|
|
ICALL2 THE-PRINT,DEAD
|
|
PRINTI " fades out of existence."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,DEAD
|
|
RTRUE
|
|
?CCL5: FSET? DEAD,SURPRISED \?CCL7
|
|
ICALL2 SEE-MONSTER,DEAD
|
|
ICALL2 WHIRLS,DEAD
|
|
RTRUE
|
|
?CCL7: CALL2 TOPPLED?,DEAD
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NEXT-ENDURANCE?,DEAD
|
|
CALL2 MONSTER-STRIKES?,DEAD >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,DEAD
|
|
ZERO? DAMAGE /?CND9
|
|
CALL2 PICK-NEXT,DEAD-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,DEAD,DAMAGE
|
|
RTRUE
|
|
?CND9: CALL2 PICK-NEXT,DEAD-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,DEAD >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? DEAD,SEEN \?CCL15
|
|
ICALL2 CTHE-PRINT,DEAD
|
|
PRINT STR?581
|
|
PRINTB DIR
|
|
JUMP ?CND13
|
|
?CCL15: FSET DEAD,SEEN
|
|
PRINTI "With a fearful battle cry, "
|
|
ICALL2 PRINTA,DEAD
|
|
PRINTI " rises out of the ruins"
|
|
?CND13: PRINTC 33
|
|
CRLF
|
|
ICALL2 TOPPLED?,DEAD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-GHOUL,DIR,DAMAGE
|
|
IN? GHOUL,HERE \?CND1
|
|
GETP GHOUL,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
ICALL2 NEXT-MONSTER,DEAD
|
|
PRINT TAB
|
|
PRINTI "Howling with pain and rage, "
|
|
ICALL2 THE-PRINT,GHOUL
|
|
PRINTI " abandons his spade and"
|
|
PRINT STR?577
|
|
PRINTI "ruins."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,GHOUL
|
|
MOVE SPADE,HERE
|
|
SET 'P-IT-OBJECT,SPADE
|
|
RTRUE
|
|
?CCL5: FSET? GHOUL,SURPRISED \?CND3
|
|
ICALL2 SEE-MONSTER,GHOUL
|
|
FSET? GHOUL,SLEEPING /?CND3
|
|
ICALL2 WHIRLS,GHOUL
|
|
RTRUE
|
|
?CND3: CALL2 STILL-SLEEPING?,GHOUL
|
|
ZERO? STACK \TRUE
|
|
CALL2 MONSTER-STRIKES?,GHOUL >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GHOUL
|
|
ZERO? DAMAGE /?CND11
|
|
CALL2 PICK-NEXT,GHOUL-HITS
|
|
PRINT STACK
|
|
ICALL OUCH,GHOUL,DAMAGE
|
|
RTRUE
|
|
?CND11: CALL2 PICK-NEXT,GHOUL-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND1: CALL2 MOVE-MONSTER?,GHOUL >DIR
|
|
ZERO? DIR /FALSE
|
|
PRINT TAB
|
|
FSET? GHOUL,SEEN \?CCL17
|
|
ICALL2 CTHE-PRINT,GHOUL
|
|
PRINT STR?581
|
|
PRINTB DIR
|
|
JUMP ?CND15
|
|
?CCL17: FSET GHOUL,SEEN
|
|
PRINTI "Without warning, "
|
|
ICALL2 PRINTA,GHOUL
|
|
PRINTI " leaps out of the rubble"
|
|
?CND15: PRINTC 33
|
|
CRLF
|
|
ICALL2 TOPPLED?,GHOUL
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-ASUCKER
|
|
CALL MOVE-SUCKERS,ASUCKER,BSUCKER
|
|
RSTACK
|
|
|
|
|
|
.FUNCT I-BSUCKER
|
|
CALL MOVE-SUCKERS,BSUCKER,CSUCKER
|
|
RSTACK
|
|
|
|
|
|
.FUNCT I-CSUCKER
|
|
CALL2 MOVE-SUCKERS,CSUCKER
|
|
RSTACK
|
|
|
|
|
|
.FUNCT MOVE-SUCKERS,OBJ,NXT,DAMAGE,L,PL,DIR,TBL,DEST,X
|
|
LOC OBJ >L
|
|
EQUAL? L,HERE \?CND1
|
|
PRINT TAB
|
|
GETP OBJ,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL5
|
|
PRINTI "Squealing with fear, "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI " retreats down the passageway."
|
|
CRLF
|
|
ZERO? NXT /?CND6
|
|
ICALL2 NEXT-MONSTER,NXT
|
|
ICALL2 NEXT-SUCKER,NXT
|
|
?CND6: ICALL2 KILL-MONSTER,OBJ
|
|
RTRUE
|
|
?CCL5: FSET? OBJ,SURPRISED \?CCL9
|
|
ICALL2 SEE-MONSTER,OBJ
|
|
ZERO? LIT? \?CND10
|
|
ICALL1 DARK-MOVES
|
|
RTRUE
|
|
?CND10: ICALL2 CTHE-PRINT,OBJ
|
|
PRINTR " glances up as you appear."
|
|
?CCL9: RANDOM 100
|
|
LESS? 20,STACK /?CND3
|
|
GETP OBJ,P?EMAX
|
|
PUTP OBJ,P?ENDURANCE,STACK
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ZERO? LIT? /?CND13
|
|
ICALL2 BLINK,OBJ
|
|
PRINTI " turns into "
|
|
?CND13: ICALL2 NEXT-SUCKER,OBJ
|
|
ZERO? LIT? /?CND15
|
|
ICALL2 PRINTA,OBJ
|
|
PRINTR "!"
|
|
?CND15: PRINT YOU-HEAR
|
|
PRINTR "a curious sound in the darkness."
|
|
?CND3: GET STATS,LUCK >X
|
|
GRTR? X,9 \?CCL19
|
|
MUL 10,X
|
|
DIV STACK,100 >DAMAGE
|
|
JUMP ?CND17
|
|
?CCL19: GRTR? X,1 \?CND17
|
|
SET 'DAMAGE,1
|
|
?CND17: ICALL2 NEXT-ENDURANCE?,OBJ
|
|
GETP HERE,P?MIRROR-OBJ >X
|
|
EQUAL? X,FALSE-VALUE,NO-MIRROR /?CCL23
|
|
ZERO? LIT? /?CCL26
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
GET SUCKER-SMASHES,THIS-SUCKER
|
|
PRINT STACK
|
|
PRINT PTAB
|
|
ICALL2 ITALICIZE,STR?582
|
|
PRINTC 33
|
|
CRLF
|
|
JUMP ?CND24
|
|
?CCL26: PRINT YOU-HEAR
|
|
PRINTI "a flabby "
|
|
ICALL2 ITALICIZE,STR?583
|
|
PRINTI " in the darkness."
|
|
CRLF
|
|
?CND24: ICALL2 DESTROY-MIRROR,X
|
|
CALL1 NOLUCK?
|
|
ZERO? STACK /TRUE
|
|
SUB 0,DAMAGE
|
|
ICALL UPDATE-STAT,STACK,LUCK,TRUE-VALUE
|
|
RTRUE
|
|
?CCL23: ZERO? LIT? /?CND21
|
|
RANDOM 100
|
|
LESS? 67,STACK /?CND21
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
GET SUCKER-HITS,THIS-SUCKER
|
|
CALL2 PICK-NEXT,STACK
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
CALL1 NOLUCK?
|
|
ZERO? STACK /TRUE
|
|
SUB 0,DAMAGE
|
|
ICALL UPDATE-STAT,STACK,LUCK,TRUE-VALUE
|
|
RTRUE
|
|
?CND21: ZERO? LIT? /?CND33
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
GET SUCKER-MISSES,THIS-SUCKER
|
|
CALL2 PICK-NEXT,STACK
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND33: PRINTI "Something "
|
|
CALL2 PICK-NEXT,SUCKER-STALKS
|
|
PRINT STACK
|
|
PRINTR " you in the darkness."
|
|
?CND1: CALL2 MOVE-MONSTER?,OBJ >DIR
|
|
ZERO? DIR /?CND35
|
|
PRINT TAB
|
|
ZERO? LIT? \?CCL39
|
|
PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
PRINTR " stalk into the passage."
|
|
?CCL39: FSET? OBJ,SEEN \?CCL41
|
|
PRINT XTHE
|
|
JUMP ?CND37
|
|
?CCL41: FSET OBJ,SEEN
|
|
PRINT XA
|
|
?CND37: ICALL2 DPRINT,OBJ
|
|
PRINTI " stalks in from the "
|
|
PRINTB DIR
|
|
PRINTR " passage."
|
|
?CND35: LOC OBJ
|
|
GETP STACK,P?MIRROR-OBJ >X
|
|
EQUAL? X,FALSE-VALUE,NO-MIRROR /FALSE
|
|
PRINT TAB
|
|
PRINT YOU-HEAR
|
|
PRINTI "a distant patter of stalking feet, then a flabby "
|
|
ICALL2 ITALICIZE,STR?583
|
|
PRINT PERIOD
|
|
ICALL2 DESTROY-MIRROR,X
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NEXT-SUCKER,OBJ,X
|
|
?PRG1: CALL2 PICK-ONE,SUCKER-TYPES >X
|
|
EQUAL? X,THIS-SUCKER /?PRG1
|
|
SET 'THIS-SUCKER,X
|
|
GETPT OBJ,P?SYNONYM >X
|
|
GET SUCKER-SYNS-A,THIS-SUCKER
|
|
PUT X,0,STACK
|
|
GET SUCKER-SYNS-B,THIS-SUCKER
|
|
PUT X,1,STACK
|
|
GETPT OBJ,P?ADJECTIVE >X
|
|
GET SUCKER-ADJS,THIS-SUCKER
|
|
PUT X,0,STACK
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-AMULET
|
|
DLESS? 'AMULET-TIMER,1 \FALSE
|
|
CALL2 VISIBLE?,AMULET
|
|
ZERO? STACK /?CND3
|
|
ICALL1 STAR-FADES
|
|
?CND3: ICALL1 STOP-AMULET
|
|
CALL2 WEARING-MAGIC?,AMULET
|
|
ZERO? STACK /FALSE
|
|
ICALL1 NORMAL-STRENGTH
|
|
RFALSE
|
|
|
|
|
|
.FUNCT STAR-FADES,ANGRY
|
|
PRINTI " The amulet's glowing star "
|
|
ZERO? ANGRY /?CND1
|
|
PRINTI "flares angrily, "
|
|
?CND1: PRINTR "fades and disappears."
|
|
|
|
|
|
.FUNCT I-SALT
|
|
EQUAL? HERE,ON-WHARF \FALSE
|
|
FSET? SALT,SEEN \?CCL5
|
|
FCLEAR SALT,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 75,STACK \FALSE
|
|
FSET SALT,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SALT
|
|
CALL2 PICK-NEXT,SALT-DABS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-BANDITS
|
|
EQUAL? HERE,IN-PUB \FALSE
|
|
FSET? BANDITS,SEEN \?CCL5
|
|
FCLEAR BANDITS,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
FSET BANDITS,SEEN
|
|
PRINT TAB
|
|
GRTR? GOSSIP,4 \?CND7
|
|
CALL2 PICK-NEXT,BANDIT-MUTTERS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND7: INC 'GOSSIP
|
|
EQUAL? GOSSIP,1 \?CCL11
|
|
PRINTR "One of the bandits leers at you. ""Har!"""
|
|
?CCL11: EQUAL? GOSSIP,2 \?CCL13
|
|
PRINTR "You overhear the word ""helmet"" in a conversation nearby."
|
|
?CCL13: EQUAL? GOSSIP,3 \?CND9
|
|
PRINTR "A bandit looks you up and down. ""Monster bait. Har!"""
|
|
?CND9: PRINTR """... north of the River Phee,"" whispers a bandit."
|
|
|
|
|
|
.FUNCT I-COOK
|
|
EQUAL? HERE,IN-KITCHEN \FALSE
|
|
FSET? COOK,SEEN \?CCL5
|
|
FCLEAR COOK,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 75,STACK \FALSE
|
|
FSET COOK,SEEN
|
|
ICALL2 SEE-CHARACTER,COOK
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,COOK
|
|
CALL2 PICK-NEXT,COOK-DOINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-ONION-OFFER
|
|
EQUAL? HERE,IN-KITCHEN \FALSE
|
|
FSET? COOK,SEEN \?CND1
|
|
FCLEAR COOK,SEEN
|
|
RFALSE
|
|
?CND1: ICALL1 STOP-ONION-OFFER
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,COOK
|
|
PRINTI "'s scowl changes to a malicious grin. ""Listen, "
|
|
ICALL1 BOY-GIRL
|
|
PRINTI ","" he says. ""You look like somebody who knows a great vegetable when "
|
|
FSET? PLAYER,FEMALE \?CND5
|
|
PRINTC 115
|
|
?CND5: PRINTI "he sees one. You want this here onion? Okay. There's an old bottle of wine lyin' around downstairs somewhere. Bring it up to me in one piece, and "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTI "'s yours."" He"
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,CELLAR-DOOR
|
|
PRINTR " and shudders. ""Simple."""
|
|
|
|
|
|
.FUNCT I-GONDOLA,RIDING
|
|
IN? WINNER,GONDOLA \?CND1
|
|
INC 'RIDING
|
|
?CND1: IGRTR? 'GON,14 \?CCL5
|
|
SET 'GON,0
|
|
ICALL REPLACE-GLOBAL?,AT-DOCK,DGONDOLA,NULL
|
|
MOVE GONDOLA,AT-DOCK
|
|
FSET GONDOLA,OPENED
|
|
ZERO? RIDING /?CCL8
|
|
SET 'HERE,AT-DOCK
|
|
JUMP ?CND6
|
|
?CCL8: EQUAL? HERE,AT-DOCK \FALSE
|
|
SET 'P-IT-OBJECT,GONDOLA
|
|
?CND6: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " glides to a halt at "
|
|
ICALL2 THE-PRINT,DOCK
|
|
PRINT PTAB
|
|
PRINTI """All off,"" calls "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI " as the hatch swings open. "
|
|
PRINT STR?584
|
|
PRINTR ". Please exit the Skycar in an orderly manner."""
|
|
?CCL5: EQUAL? GON,1 \?CCL12
|
|
EQUAL? HERE,AT-DOCK \FALSE
|
|
PRINT TAB
|
|
PRINTI "The last few "
|
|
PRINTD PASSENGERS
|
|
PRINTI " are shuffling out of "
|
|
ICALL2 THE-PRINT,GONDOLA
|
|
ZERO? RIDING /?CND15
|
|
PRINTI ". ""All off, please,"" repeats "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI ", meaning you"
|
|
?CND15: PRINT PERIOD
|
|
RTRUE
|
|
?CCL12: EQUAL? GON,2 \?CCL18
|
|
EQUAL? HERE,AT-DOCK \FALSE
|
|
PRINT TAB
|
|
ZERO? RIDING /?CND21
|
|
MOVE PLAYER,AT-DOCK
|
|
FSET GONDOLA,NODESC
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
PRINT STR?584
|
|
PRINTI ","" growls "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI ", pushing you out of "
|
|
ICALL2 THE-PRINT,GONDOLA
|
|
ICALL1 RELOOK
|
|
?CND21: PRINTI "Eager "
|
|
PRINTD PASSENGERS
|
|
PRINTI " surge into the emptied "
|
|
PRINTD GONDOLA
|
|
PRINTI ". ""All aboard, please,"" announces "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR " unnecessarily."
|
|
?CCL18: EQUAL? GON,3 \?CCL24
|
|
FCLEAR GONDOLA,OPENED
|
|
ZERO? RIDING \?CND25
|
|
EQUAL? HERE,AT-DOCK \FALSE
|
|
?CND25: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI """Stay clear of the door, please,"" calls "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI " as the last few "
|
|
PRINTD PASSENGERS
|
|
PRINTI " squeeze into "
|
|
ICALL2 THE-PRINT,GONDOLA
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL24: EQUAL? GON,4 \?CCL29
|
|
MOVE GONDOLA,OVER-JUNGLE
|
|
ICALL REPLACE-GLOBAL?,AT-DOCK,NULL,DGONDOLA
|
|
ZERO? RIDING /?CCL32
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
SET 'HERE,OVER-JUNGLE
|
|
JUMP ?CND30
|
|
?CCL32: EQUAL? HERE,AT-DOCK \FALSE
|
|
SET 'P-IT-OBJECT,DGONDOLA
|
|
?CND30: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " slides away from the dock and glides west, high over "
|
|
ICALL2 THE-PRINT,JUNGLE
|
|
PRINT PTAB
|
|
PRINTI """Welcome to the Miznia Jungle Skyway."" drawls "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR ", his voice heavy with boredom."
|
|
?CCL29: EQUAL? GON,5 \?CCL36
|
|
ICALL REPLACE-GLOBAL?,AT-DOCK,DGONDOLA,NULL
|
|
ICALL REPLACE-GLOBAL?,NW-SUPPORT,NULL,DGONDOLA
|
|
ICALL REPLACE-GLOBAL?,NW-UNDER,NULL,DGONDOLA
|
|
ICALL REPLACE-GLOBAL?,OVER-JUNGLE,DOCK,SUPPORT
|
|
PUTP NW-UNDER,P?OVERHEAD,DGONDOLA
|
|
EQUAL? HERE,AT-DOCK \?CCL39
|
|
ICALL2 GONDOLA-GONE,W?WEST
|
|
RTRUE
|
|
?CCL39: EQUAL? HERE,NW-SUPPORT,NW-UNDER \?CCL41
|
|
ICALL VIEWGLIDE,NW-UNDER,W?EAST
|
|
RTRUE
|
|
?CCL41: ZERO? RIDING /FALSE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,SUPPORT
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " glides over "
|
|
ICALL2 THE-PRINT,JUNGLE
|
|
PRINTI ", towards a tall "
|
|
PRINTD SUPPORT
|
|
PRINT PTAB
|
|
PRINTI """The jungles of Miznia are the spawning grounds of the deadly "
|
|
PRINTD WORM
|
|
PRINTI ","" drones "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI ". ""Often mistaken for a mossy boulder, the "
|
|
PRINTD WORM
|
|
PRINTR "'s fangs extend up to 32 inches during an attack.""
|
|
""Oooh,"" murmurs the crowd."
|
|
?CCL36: EQUAL? GON,6 \?CCL44
|
|
MOVE GONDOLA,NW-SUPPORT
|
|
EQUAL? HERE,NW-SUPPORT \?CCL47
|
|
ICALL1 GLIDING
|
|
JUMP ?CND45
|
|
?CCL47: ZERO? RIDING /FALSE
|
|
ICALL2 GLIDE-PAST,NW-SUPPORT
|
|
?CND45: PRINT TAB
|
|
PRINTI """The tower to your right is one of several erected to elevate the Skyway above the treetops,"" explains "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR ". ""Before the Skyway opened in 882 GUE, an average of twenty Miznia Jungle Train passengers died of wormbite each year.""
|
|
The crowd giggles nervously."
|
|
?CCL44: EQUAL? GON,7 \?CCL51
|
|
MOVE GONDOLA,OVER-JUNGLE
|
|
ZERO? RIDING /?CCL54
|
|
SET 'HERE,OVER-JUNGLE
|
|
JUMP ?CND52
|
|
?CCL54: EQUAL? HERE,NW-SUPPORT \FALSE
|
|
SET 'P-IT-OBJECT,DGONDOLA
|
|
?CND52: ICALL2 TURNS,W?SOUTH
|
|
ZERO? RIDING /TRUE
|
|
PRINT TAB
|
|
PRINTI """The jungle is a rich source of exciting stories,"" continues "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR ", stifling a yawn. ""The most famous is the Legend of the Crocodile's Tear."""
|
|
?CCL51: EQUAL? GON,8 \?CCL60
|
|
ICALL REPLACE-GLOBAL?,NW-SUPPORT,DGONDOLA,NULL
|
|
ICALL REPLACE-GLOBAL?,NW-UNDER,DGONDOLA,NULL
|
|
PUTP NW-UNDER,P?OVERHEAD,SUPPORT
|
|
ICALL REPLACE-GLOBAL?,SW-SUPPORT,NULL,DGONDOLA
|
|
ICALL REPLACE-GLOBAL?,SW-UNDER,NULL,DGONDOLA
|
|
PUTP SW-UNDER,P?OVERHEAD,DGONDOLA
|
|
EQUAL? HERE,NW-SUPPORT,NW-UNDER \?CCL63
|
|
SET 'P-IT-OBJECT,NOT-HERE-OBJECT
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTR " glides southward, and is soon out of sight."
|
|
?CCL63: EQUAL? HERE,SW-SUPPORT,SW-UNDER \?CCL65
|
|
ICALL VIEWGLIDE,SW-UNDER,W?NORTH
|
|
RTRUE
|
|
?CCL65: ZERO? RIDING /FALSE
|
|
ICALL1 JUNGLE-GLIDE
|
|
PRINT TAB
|
|
PRINTI """The Crocodile's Tear is a sapphire of extraordinary size and clarity. It was discovered by a slave working the granola mines of Antharia, who died bringing it to the surface."""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "Another "
|
|
PRINTD SUPPORT
|
|
PRINTR " is approaching."
|
|
?CCL60: EQUAL? GON,9 \?CCL68
|
|
MOVE GONDOLA,SW-SUPPORT
|
|
EQUAL? HERE,SW-SUPPORT \?CCL71
|
|
ICALL1 GLIDING
|
|
JUMP ?CND69
|
|
?CCL71: ZERO? RIDING /FALSE
|
|
ICALL2 GLIDE-PAST,SW-SUPPORT
|
|
?CND69: PRINT TAB
|
|
PRINTR """After passing through many hands, including those of Thaddium Fzort"" (""Bless you,"" mutters a passenger), ""the jewel came into the possession of the evil sorceress Y'Syska, whose collection of gems and minerals is still without peer."""
|
|
?CCL68: EQUAL? GON,10 \?CCL75
|
|
MOVE GONDOLA,OVER-JUNGLE
|
|
ZERO? RIDING /?CCL78
|
|
SET 'HERE,OVER-JUNGLE
|
|
JUMP ?CND76
|
|
?CCL78: EQUAL? HERE,SW-SUPPORT \FALSE
|
|
SET 'P-IT-OBJECT,DGONDOLA
|
|
?CND76: ICALL2 TURNS,W?EAST
|
|
ZERO? RIDING /TRUE
|
|
PRINT TAB
|
|
PRINTI """Flash photography is prohibited,"" growls "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR " as a passenger snaps a picture of the hazy landscape."
|
|
?CCL75: EQUAL? GON,11 \?CCL84
|
|
ICALL REPLACE-GLOBAL?,SW-SUPPORT,DGONDOLA,NULL
|
|
ICALL REPLACE-GLOBAL?,SW-UNDER,DGONDOLA,NULL
|
|
PUTP SW-UNDER,P?OVERHEAD,SUPPORT
|
|
ICALL REPLACE-GLOBAL?,SE-SUPPORT,NULL,DGONDOLA
|
|
ICALL REPLACE-GLOBAL?,SE-UNDER,NULL,DGONDOLA
|
|
PUTP SE-UNDER,P?OVERHEAD,DGONDOLA
|
|
EQUAL? HERE,SW-SUPPORT,SW-UNDER \?CCL87
|
|
ICALL2 GONDOLA-GONE,W?EAST
|
|
RTRUE
|
|
?CCL87: EQUAL? HERE,SE-SUPPORT,SE-UNDER \?CCL89
|
|
ICALL VIEWGLIDE,SE-UNDER,W?WEST
|
|
RTRUE
|
|
?CCL89: ZERO? RIDING /FALSE
|
|
ICALL1 JUNGLE-GLIDE
|
|
PRINT TAB
|
|
PRINTI """To protect the Crocodile's Tear from thieves, Y'Syska concealed it somewhere in the jungle below,"" concludes "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI " lamely. ""There it remains to this very day, guarded by bloodworms and whatever traps the sorceress laid to confound the unwary."""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "Another "
|
|
PRINTD SUPPORT
|
|
PRINTR " looms to the east."
|
|
?CCL84: EQUAL? GON,12 \?CCL92
|
|
MOVE GONDOLA,SE-SUPPORT
|
|
EQUAL? HERE,SE-SUPPORT \?CCL95
|
|
ICALL1 GLIDING
|
|
JUMP ?CND93
|
|
?CCL95: ZERO? RIDING /FALSE
|
|
ICALL2 GLIDE-PAST,SE-SUPPORT
|
|
?CND93: PRINT TAB
|
|
PRINTI """Thirsty?"" asks "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI ". ""Stop by "
|
|
PRINT STR?585
|
|
PRINTR "tall, frosty Granola Float."" He smacks his lips dispiritedly. ""Mmm, so good."""
|
|
?CCL92: EQUAL? GON,13 \?CCL99
|
|
MOVE GONDOLA,OVER-JUNGLE
|
|
ZERO? RIDING /?CCL102
|
|
SET 'HERE,OVER-JUNGLE
|
|
JUMP ?CND100
|
|
?CCL102: EQUAL? HERE,SE-SUPPORT \FALSE
|
|
?CND100: ICALL2 TURNS,W?NORTH
|
|
ZERO? RIDING /TRUE
|
|
PRINT TAB
|
|
PRINTI """Bloodworms are not the only inhabitants of the Miznia jungle,"" remarks "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTR ", pausing to stretch. ""Survivors have reported a wide variety of birds, reptiles and other unclassifiable dangers."""
|
|
?CCL99: EQUAL? GON,14 \FALSE
|
|
ICALL REPLACE-GLOBAL?,SE-SUPPORT,DGONDOLA,NULL
|
|
ICALL REPLACE-GLOBAL?,OVER-JUNGLE,SUPPORT,DOCK
|
|
ICALL REPLACE-GLOBAL?,SE-UNDER,DGONDOLA,NULL
|
|
PUTP SW-UNDER,P?OVERHEAD,SUPPORT
|
|
ICALL REPLACE-GLOBAL?,AT-DOCK,NULL,DGONDOLA
|
|
EQUAL? HERE,SE-SUPPORT,SE-UNDER \?CCL110
|
|
ICALL2 GONDOLA-GONE,W?NORTH
|
|
RTRUE
|
|
?CCL110: EQUAL? HERE,AT-DOCK \?CCL112
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 PRINTCA,GONDOLA
|
|
PRINT SIS
|
|
PRINT STR?586
|
|
RTRUE
|
|
?CCL112: ZERO? RIDING /FALSE
|
|
ICALL1 JUNGLE-GLIDE
|
|
PRINT TAB
|
|
PRINTI """Be sure to visit "
|
|
PRINT STR?585
|
|
PRINTI "thrilling selection of one-of-a-kind gift ideas,"" urges "
|
|
ICALL2 THE-PRINT,CONDUCTOR
|
|
PRINTI " as "
|
|
ICALL2 THE-PRINT,DOCK
|
|
PRINTR " appears to the north."
|
|
|
|
|
|
.FUNCT GONDOLA-GONE,WRD
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " disappears to the "
|
|
PRINTB WRD
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT TURNS,WRD
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " turns and glides "
|
|
PRINTB WRD
|
|
PRINTI ", away from "
|
|
ICALL2 THE-PRINT,SUPPORT
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT VIEWGLIDE,RM,WRD
|
|
SET 'P-IT-OBJECT,DGONDOLA
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 PRINTCA,GONDOLA
|
|
PRINTI " glides into view "
|
|
EQUAL? RM,HERE \?CND1
|
|
PRINTR "overhead."
|
|
?CND1: PRINTI "from the "
|
|
PRINTB WRD
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GLIDING
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTR " glides smoothly past, just a few feet away."
|
|
|
|
|
|
.FUNCT GLIDE-PAST,RM
|
|
SET 'HERE,RM
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " is gliding just a few feet from the top of "
|
|
ICALL2 THE-PRINT,SUPPORT
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT JUNGLE-GLIDE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,SUPPORT
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GONDOLA
|
|
PRINTI " glides across "
|
|
ICALL2 THE-PRINT,JUNGLE
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-PHASE,L
|
|
FSET? PHASE,SEEN \?CCL3
|
|
FCLEAR PHASE,SEEN
|
|
RFALSE
|
|
?CCL3: FSET? PHASE,NODESC \FALSE
|
|
CALL2 VISIBLE?,PHASE
|
|
ZERO? STACK /FALSE
|
|
FCLEAR PHASE,NODESC
|
|
SET 'P-IT-OBJECT,PHASE
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
LOC PHASE >L
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,PHASE
|
|
EQUAL? L,PLAYER \?CCL10
|
|
PRINT SIN
|
|
PRINTD HANDS
|
|
PRINTC 115
|
|
JUMP ?CND8
|
|
?CCL10: EQUAL? L,HERE \?CCL12
|
|
PRINT SON
|
|
FSET? HERE,INDOORS \?CCL15
|
|
ICALL2 THE-PRINT,FLOOR
|
|
JUMP ?CND8
|
|
?CCL15: ICALL2 THE-PRINT,GROUND
|
|
JUMP ?CND8
|
|
?CCL12: FSET? L,CONTAINER \?CCL17
|
|
PRINT SIN
|
|
ICALL2 THE-PRINT,L
|
|
JUMP ?CND8
|
|
?CCL17: FSET? L,SURFACE \?CND8
|
|
PRINT SON
|
|
ICALL2 THE-PRINT,L
|
|
?CND8: PRINTR " reappears at the edge of your vision."
|
|
|
|
|
|
.FUNCT I-OWOMAN
|
|
IN? OWOMAN,HERE \FALSE
|
|
FSET? OWOMAN,SEEN \?CCL5
|
|
FCLEAR OWOMAN,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
SET 'P-HER-OBJECT,OWOMAN
|
|
FSET OWOMAN,SEEN
|
|
PRINT TAB
|
|
PRINT CTHELADY
|
|
CALL2 PICK-NEXT,OWOMAN-MOVES
|
|
PRINT STACK
|
|
ICALL2 THE-PRINT,MCASE
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-MIRRORS,V,HEAR,L,OBJ,CNT,TIME,LEN
|
|
CALL1 GRUE-ROOM? >HEAR
|
|
GET MIRROR-LIST,0 >LEN
|
|
SET 'CNT,7
|
|
?PRG1: GET MIRROR-LIST,LEN >OBJ
|
|
LOC OBJ >L
|
|
ZERO? L /?CCL5
|
|
GETP OBJ,P?SIZE >TIME
|
|
DLESS? 'TIME,1 \?CCL8
|
|
DEC 'CNT
|
|
EQUAL? L,HERE \?CCL11
|
|
INC 'V
|
|
PRINT TAB
|
|
ICALL2 SAY-MIRROR-POPS,OBJ
|
|
JUMP ?CND9
|
|
?CCL11: ZERO? HEAR /?CND9
|
|
INC 'V
|
|
PRINT TAB
|
|
PRINTI "A distant "
|
|
ICALL2 ITALICIZE,STR?583
|
|
PRINTI " echoes down the passageway."
|
|
CRLF
|
|
?CND9: ICALL2 DESTROY-MIRROR,OBJ
|
|
JUMP ?CND3
|
|
?CCL8: PUTP OBJ,P?SIZE,TIME
|
|
EQUAL? L,HERE \?CND3
|
|
EQUAL? TIME,2,10,18 \?CND3
|
|
INC 'V
|
|
PRINT TAB
|
|
SET 'P-IT-OBJECT,OBJ
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
EQUAL? TIME,2 \?CCL19
|
|
PRINTI " is flexing dangerously now"
|
|
PRINT STR?587
|
|
JUMP ?CND3
|
|
?CCL19: EQUAL? TIME,10 \?CCL21
|
|
PRINTI " shimmers uncertainly for a moment."
|
|
CRLF
|
|
JUMP ?CND3
|
|
?CCL21: PRINTI " billows slightly, then stabilizes."
|
|
CRLF
|
|
JUMP ?CND3
|
|
?CCL5: DEC 'CNT
|
|
?CND3: DLESS? 'LEN,1 \?PRG1
|
|
ZERO? CNT /?CCL25
|
|
RETURN V
|
|
?CCL25: ICALL2 DEQUEUE,I-MIRRORS
|
|
RETURN V
|
|
|
|
|
|
.FUNCT SAY-MIRROR-POPS,OBJ
|
|
ICALL2 ITALICIZE,STR?582
|
|
PRINTI "! "
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
PRINTR " disappears in a silver spray."
|
|
|
|
|
|
.FUNCT DESTROY-MIRROR,OBJ,L
|
|
EQUAL? OBJ,FALSE-VALUE,NO-MIRROR /FALSE
|
|
LOC OBJ >L
|
|
PUTP OBJ,P?MIRROR-DIR,NO-MIRROR
|
|
PUTP OBJ,P?SIZE,0
|
|
REMOVE OBJ
|
|
EQUAL? L,HERE \?CND3
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
?CND3: GETP L,P?MIRROR-OBJ
|
|
EQUAL? STACK,OBJ \FALSE
|
|
PUTP L,P?MIRROR-OBJ,NO-MIRROR
|
|
ICALL1 REFLECTIONS
|
|
RFALSE
|
|
|
|
|
|
.FUNCT CREATE-MIRROR?,OBJ,DIR
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE OBJ,HERE
|
|
SET 'P-IT-OBJECT,OBJ
|
|
RANDOM 7
|
|
BOR STACK,1 >DIR
|
|
PUTP OBJ,P?MIRROR-DIR,DIR
|
|
PUTP OBJ,P?SIZE,MIRROR-LIFE
|
|
CALL2 QUEUED?,I-MIRRORS
|
|
ZERO? STACK \?CND1
|
|
ICALL2 QUEUE,I-MIRRORS
|
|
?CND1: RETURN DIR
|
|
|
|
|
|
.FUNCT I-URGRUE,SEE
|
|
EQUAL? HERE,IN-LAIR \FALSE
|
|
ZERO? LIT? \?CCL4
|
|
CALL2 WEARING-MAGIC?,HELM
|
|
ZERO? STACK /?CND1
|
|
?CCL4: INC 'SEE
|
|
?CND1: FSET URGRUE,SEEN
|
|
PRINT TAB
|
|
FSET? URGRUE,SURPRISED \?CND7
|
|
FCLEAR URGRUE,SURPRISED
|
|
FSET? URGRUE,IDENTIFIED /?CND9
|
|
FSET URGRUE,IDENTIFIED
|
|
ZERO? SEE /?CCL13
|
|
PRINTI "As you glance around the chamber, "
|
|
ICALL2 THE-PRINT,URGRUE
|
|
PRINTI " yawns and stretches"
|
|
JUMP ?CND11
|
|
?CCL13: PRINT YOU-HEAR
|
|
PRINT STR?588
|
|
PRINTI " yawn"
|
|
?CND11: PRINTR ". ""At last we meet."""
|
|
?CND9: PRINTC 34
|
|
CALL2 PICK-NEXT,URGRUE-GREETS
|
|
PRINT STACK
|
|
PRINTI ","" chuckles "
|
|
ZERO? SEE /?CCL16
|
|
ICALL2 THE-PRINT,URGRUE
|
|
JUMP ?CND14
|
|
?CCL16: PRINT STR?588
|
|
?CND14: LESS? URSCRIPT,2 \?CND17
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: PRINTR ". ""Now where were we? Ah, yes. We were deciding how best to destroy you."""
|
|
?CND7: IGRTR? 'URSCRIPT,4 \?CCL21
|
|
ICALL1 TIMESTOP
|
|
RTRUE
|
|
?CCL21: EQUAL? URSCRIPT,4 \?CCL23
|
|
PRINTI """I know!"" cries "
|
|
ICALL2 THE-PRINT,URGRUE
|
|
PRINTR " with delight. ""Girgol, the Time Stop spell! Love it. You'll make a hilarious statue."""
|
|
?CCL23: EQUAL? URSCRIPT,3 \?CCL25
|
|
ICALL2 CTHE-PRINT,URGRUE
|
|
PRINTI " mutters thoughtfully to itself. ""Let's see, now. A spell. Cleesh? No; too silly. Espnis? Hmm. Better not; "
|
|
FSET? PLAYER,FEMALE \?CND26
|
|
PRINTC 115
|
|
?CND26: PRINTR "he might snore."""
|
|
?CCL25: EQUAL? URSCRIPT,2 \?CND19
|
|
PRINTI """An interesting question,"" continues "
|
|
ICALL2 THE-PRINT,URGRUE
|
|
PRINTI " conversationally, ""is "
|
|
ICALL2 ITALICIZE,STR?589
|
|
PRINTR " to destroy you. Not a trivial decision, no. I must select a spell that will enhance my image, a Magick worthy of my thoroughly evil reputation."""
|
|
?CND19: ICALL2 CTHE-PRINT,URGRUE
|
|
PRINTR "'s chuckling subsides. ""I rarely get visitors,"" it admits in a wistful tone. ""A pity I have to destroy you."""
|
|
|
|
|
|
.FUNCT I-ARCH3
|
|
INC 'ARCHTIMER
|
|
PRINT TAB
|
|
EQUAL? ARCHTIMER,1 \?CCL3
|
|
ICALL2 CTHE-PRINT,ORATOR
|
|
PRINTI " stills "
|
|
ICALL2 THE-PRINT,PCROWD
|
|
PRINTI " with a wave of his hand.
|
|
""Our fathers built this city at the Place Where the Great Waters Meet,"" he cries. ""The right to name the One River belongs to us!"""
|
|
CRLF
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,PCROWD
|
|
PRINTR " roars its approval."
|
|
?CCL3: EQUAL? ARCHTIMER,2 \?CCL5
|
|
PRINTI """The infidels from the east control the One River's mouth,"" continues "
|
|
ICALL2 THE-PRINT,ORATOR
|
|
PRINTI ". ""But we, who dwell at the joining of the Rivers Phee and Bor, WE control the source!"" "
|
|
ICALL2 CTHE-PRINT,PCROWD
|
|
PRINTI " whistles. ""As the daughter takes the name of the father, so shall the One River be known by the place of its birth!"""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTC 34
|
|
ICALL2 ITALICIZE,STR?590
|
|
PRINTI "!"" roars "
|
|
ICALL2 THE-PRINT,PCROWD
|
|
PRINTR ". ""Hail the River Pheebor!"""
|
|
?CCL5: EQUAL? ARCHTIMER,3 \?CND1
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
REMOVE ORATOR
|
|
SET 'QCONTEXT,FALSE-VALUE
|
|
SET 'QCONTEXT-ROOM,FALSE-VALUE
|
|
SET 'P-HIM-OBJECT,NOT-HERE-OBJECT
|
|
PRINTI """Phee-bor! Phee-bor!"" chants "
|
|
ICALL2 THE-PRINT,PCROWD
|
|
PRINT PTAB
|
|
PRINTI """We have no quarrel with the city to the east,"" claims "
|
|
ICALL2 THE-PRINT,ORATOR
|
|
PRINTI " (amid shouts to the contrary). ""But if they continue to slight our heritage with the wretched name "
|
|
ICALL2 ITALICIZE,STR?591
|
|
PRINTI """ (the crowd hisses), ""we shall smite them from the face of the land!"""
|
|
CRLF
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,PCROWD
|
|
PRINTI " goes wild, and carries "
|
|
ICALL2 THE-PRINT,ORATOR
|
|
PRINTR " away on its shoulders."
|
|
?CND1: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 DEQUEUE,I-ARCH3
|
|
REMOVE PCROWD
|
|
SET 'P-THEM-OBJECT,NOT-HERE-OBJECT
|
|
ICALL2 CTHE-PRINT,PCROWD
|
|
PRINTR " disperses, and you're left alone."
|
|
|
|
|
|
.FUNCT I-ARCH4
|
|
INC 'ARCHTIMER
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
EQUAL? ARCHTIMER,1 \?CCL3
|
|
MOVE HORSE,HERE
|
|
ICALL2 SEE-CHARACTER,PRINCE
|
|
SET 'P-IT-OBJECT,HELM
|
|
PRINTR "A magnificent gray stallion appears amid the smoke. Its rider is a tall, proud man wearing a fabulous helmet."
|
|
?CCL3: EQUAL? ARCHTIMER,2 \?CCL5
|
|
MOVE BHORSE,HERE
|
|
PRINTR "Another stallion, black as night, races out of the smoke. Its rider's armor gleams red in the firelight.
|
|
""At last we meet, Prince Foo,"" snarls the newcomer.
|
|
The man on the gray stallion regards him coolly. ""Begone, thou eastern fop!"" he cries. ""Never shall the River Pheebor yield its sacred name!"""
|
|
?CCL5: EQUAL? ARCHTIMER,3 \?CND1
|
|
SET 'QCONTEXT,FALSE-VALUE
|
|
SET 'QCONTEXT-ROOM,FALSE-VALUE
|
|
REMOVE BHORSE
|
|
FSET PRINCE,SLEEPING
|
|
MOVE PRINCE,HERE
|
|
MOVE HELM,TRENCH
|
|
PUTP PRINCE,P?ACTION,DEAD-PRINCE-F
|
|
ICALL REPLACE-SYN?,PRINCE,W?ZZZP,W?HEAD
|
|
ICALL REPLACE-SYN?,PRINCE,W?ZZZP,W?BODY
|
|
ICALL REPLACE-SYN?,PRINCE,W?ZZZP,W?CORPSE
|
|
ICALL REPLACE-ADJ?,PRINCE,W?ZZZP,W?DEAD
|
|
PRINTR "The black rider draws a gleaming sword from his scabbard and cuts off the prince's head, which rolls into the trench.
|
|
""The reign of Pheebor is ended!"" cries the black knight, galloping off into the smoke. ""Foo is dead! The age of Borphee is begun!""
|
|
The gray stallion nudges the prince's body, and whinnies softly."
|
|
?CND1: ICALL2 DEQUEUE,I-ARCH4
|
|
IN? HORSE,TRENCH /?CND7
|
|
PRINT XA
|
|
ICALL1 SLAY-HORSE
|
|
PRINT TAB
|
|
?CND7: PRINTR "Cries of ""Foo is dead! The war is over!"" drift through the smoke. Tattered men race past; the cries grow faint; and soon all is still as death."
|
|
|
|
|
|
.FUNCT I-GLASS,V
|
|
CALL2 VISIBLE?,GLASS >V
|
|
INC 'GLASS-BOT
|
|
DLESS? 'GLASS-TOP,1 \?CCL3
|
|
ICALL2 DEQUEUE,I-GLASS
|
|
ZERO? V /FALSE
|
|
PRINT TAB
|
|
PRINTI "The last grains of sand fall through "
|
|
ICALL2 THE-PRINT,GLASS
|
|
PRINT PERIOD
|
|
ICALL1 ARCH-OFF
|
|
RTRUE
|
|
?CCL3: ZERO? V /FALSE
|
|
EQUAL? GLASS-TOP,2,4 /FALSE
|
|
PRINT TAB
|
|
EQUAL? GLASS-TOP,1 \?CND9
|
|
PRINTI "The top half of "
|
|
ICALL2 THE-PRINT,GLASS
|
|
PRINTR " is almost empty."
|
|
?CND9: PRINTI "Sand continues to trickle through "
|
|
ICALL2 THE-PRINT,GLASS
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-HUNTERS
|
|
EQUAL? HERE,IN-PASTURE \FALSE
|
|
IN? HUNTERS,IN-PASTURE /?CCL5
|
|
SET 'HSCRIPT,0
|
|
ICALL2 QUEUE,I-HUNT
|
|
MOVE HUNTERS,IN-PASTURE
|
|
FSET HUNTERS,SEEN
|
|
ICALL2 SEE-CHARACTER,HUNTERS
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINTR " A distant movement catches your eye. Peering between the oaks, you see men foraging at the pasture's edge. They look like hunters."
|
|
?CCL5: FSET? HUNTERS,SEEN \?CCL7
|
|
FCLEAR HUNTERS,SEEN
|
|
RFALSE
|
|
?CCL7: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
FSET HUNTERS,SEEN
|
|
PRINTI " The distant "
|
|
PRINTD HUNTERS
|
|
CALL2 PICK-NEXT,HUNTER-DOINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-HUNT
|
|
EQUAL? HERE,IN-PASTURE \FALSE
|
|
INC 'HSCRIPT
|
|
FSET HUNTERS,SEEN
|
|
PRINT TAB
|
|
EQUAL? HSCRIPT,1 \?CCL5
|
|
MOVE MINX,OAK
|
|
MOVE TRACKS,HERE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-HER-OBJECT,MINX
|
|
SET 'P-IT-OBJECT,MINX
|
|
PRINTI """Come back 'ere, you!"""
|
|
CRLF
|
|
PRINT TAB
|
|
ICALL2 ITALICIZE,STR?500
|
|
PRINTI "! A golden bundle of fur jumps out of the forest! It bounds across the snow in quick, desperate leaps, ducks behind the trunk of "
|
|
ICALL2 PRINTA,OAK
|
|
PRINT STR?592
|
|
PRINT TAB
|
|
PRINTI """I'll wring yer li'l neck,"" promises an angry voice."
|
|
CRLF
|
|
ZERO? DMODE \TRUE
|
|
ICALL2 RELOOK,TRUE-VALUE
|
|
RTRUE
|
|
?CCL5: EQUAL? HSCRIPT,2 \?CCL9
|
|
PRINTR """I see yer dirty tracks, ye pest!"" The angry voice is getting much closer."
|
|
?CCL9: EQUAL? HSCRIPT,3 \?CCL11
|
|
MOVE HUNTER,IN-PASTURE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 SEE-CHARACTER,HUNTER
|
|
PRINTI """Show yerself, ye flea-bit mop!"""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "A young man strides out of the woods, an angry scowl on his windburned face"
|
|
IN? TRACKS,HERE \?CND12
|
|
REMOVE TRACKS
|
|
PRINTI " as he follows the tracks in the snow."
|
|
CRLF
|
|
ICALL1 HUNTER-SEES-MINX
|
|
RTRUE
|
|
?CND12: PRINTI "... and a nasty-looking whip in his hands"
|
|
PRINT PTAB
|
|
PRINTI """Yo, "
|
|
FSET? PLAYER,FEMALE \?CCL16
|
|
PRINTI "ma'am"
|
|
JUMP ?CND14
|
|
?CCL16: PRINTI "sir"
|
|
?CND14: PRINTI "!"" he cries, drawing closer. ""Lost a minx 'ereabouts! Came this way, if th' trail speaks truly.""
|
|
Something behind "
|
|
ICALL2 THE-PRINT,OAK
|
|
PRINTR " whimpers softly."
|
|
?CCL11: EQUAL? HSCRIPT,4 \?CCL18
|
|
PRINTI "The lad surveys the pasture impatiently. ""Blasted crayture,"" he mutters with a practiced crack of the whip. ""One o' me best. 'Twould be a shame to lose 'er.""
|
|
The beast behind "
|
|
ICALL2 THE-PRINT,OAK
|
|
PRINTR " makes itself as small as possible."
|
|
?CCL18: EQUAL? HSCRIPT,5 \FALSE
|
|
ICALL2 DEQUEUE,I-HUNT
|
|
SET 'HSCRIPT,0
|
|
REMOVE HUNTER
|
|
FCLEAR HUNTERS,SEEN
|
|
SET 'P-HIM-OBJECT,NOT-HERE-OBJECT
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE MINX,IN-PASTURE
|
|
FCLEAR MINX,TRYTAKE
|
|
FCLEAR MINX,NOALL
|
|
FSET MINX,TAKEABLE
|
|
ICALL2 QUEUE,I-MINX
|
|
ICALL2 SEE-CHARACTER,MINX
|
|
PRINTI """Hide from me, will ye, ye snufflin' she-devil!"" cries "
|
|
ICALL2 THE-PRINT,HUNTER
|
|
PRINTI " striding back into the forest. ""It's to the hounds I'll be throwin' yer bleedin' carcass!"" His curses soon "
|
|
PRINT STR?593
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " pokes its nose out from behind "
|
|
ICALL2 THE-PRINT,OAK
|
|
PRINTI ", sniffing fearfully. It peeks around "
|
|
ICALL2 THE-PRINT,GCORNER
|
|
PRINTI ", and its brown eyes lock with yours"
|
|
PRINT PTAB
|
|
PRINTR """Minx?"""
|
|
|
|
|
|
.FUNCT I-MINX,L,NL,PL,PLL,V,TBL,DIR,X,TYPE
|
|
LOC MINX >L
|
|
ZERO? L /?CCL2
|
|
FSET? MINX,LIVING /?CND1
|
|
?CCL2: ICALL2 DEQUEUE,I-MINX
|
|
RFALSE
|
|
?CND1: CALL2 VISIBLE?,MINX >V
|
|
FSET? MINX,SLEEPING \?CCL7
|
|
ZERO? V /FALSE
|
|
FSET? MINX,SEEN \?CCL12
|
|
FCLEAR MINX,SEEN
|
|
RFALSE
|
|
?CCL12: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
ICALL1 MINXTAB
|
|
ICALL2 CTHE-PRINT,MINX
|
|
CALL2 PICK-NEXT,MINX-SLEEPS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL7: EQUAL? L,PLAYER \?CND5
|
|
ICALL1 MINXTAB
|
|
IN? TRUFFLE,L \?CND15
|
|
ICALL1 MINX-EATS-TRUFFLE
|
|
RTRUE
|
|
?CND15: ICALL2 CTHE-PRINT,MINX
|
|
CALL2 BAD-MINX-PLACE?,HERE
|
|
ZERO? STACK /?CCL19
|
|
SET 'X,MINX-NERVES
|
|
RANDOM 100
|
|
LESS? 33,STACK /?CND20
|
|
SET 'X,MINX-RESTLESS
|
|
?CND20: CALL2 PICK-NEXT,X
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL19: FSET? MINX,TOUCHED \?CCL23
|
|
FCLEAR MINX,TOUCHED
|
|
FSET MINX,TRYTAKE
|
|
CALL2 PICK-NEXT,MINX-SETTLES
|
|
PRINT STACK
|
|
PRINTR " in your arms."
|
|
?CCL23: FSET? MINX,TRYTAKE \?CND17
|
|
FCLEAR MINX,TRYTAKE
|
|
CALL2 PICK-NEXT,MINX-RESTLESS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
PRINTC SP
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL27
|
|
ICALL1 SAY-LEAP
|
|
PRINTI "s "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL30
|
|
PRINTI "out of your "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL33
|
|
PRINTI "arms "
|
|
JUMP ?CND25
|
|
?CCL33: PRINTI "grasp "
|
|
JUMP ?CND25
|
|
?CCL30: PRINTI "free "
|
|
JUMP ?CND25
|
|
?CCL27: PRINTI "frees itself "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND25
|
|
PRINTI "with a "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND36
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL40
|
|
PRINTI "sudden "
|
|
JUMP ?CND36
|
|
?CCL40: PRINTI "quick "
|
|
?CND36: ICALL1 SAY-LEAP
|
|
PRINTC SP
|
|
?CND25: PRINTI "and "
|
|
ICALL2 FALLS,MINX
|
|
RTRUE
|
|
?CND5: FCLEAR MINX,TOUCHED
|
|
FCLEAR MINX,TRYTAKE
|
|
LOC PLAYER >PL
|
|
EQUAL? L,PL \?CCL43
|
|
FSET? MINX,SEEN \?CCL46
|
|
FCLEAR MINX,SEEN
|
|
RFALSE
|
|
?CCL46: IN? TRUFFLE,L /?CND44
|
|
RANDOM 100
|
|
LESS? 80,STACK \FALSE
|
|
?CND44: ICALL1 MINXTAB
|
|
ZERO? LIT? \?CCL52
|
|
PRINTI "Something"
|
|
CALL2 PICK-NEXT,DARK-MINXES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL52: EQUAL? L,ARCH,ARCH4,ARCH12 \?CCL54
|
|
IN? TRUFFLE,TRENCH \?CCL54
|
|
FCLEAR MINX,SEEN
|
|
EQUAL? HERE,ARCH12 \?CND57
|
|
FSET? TRENCH,NODESC \?CND59
|
|
ICALL1 DIG-UP-TRENCH
|
|
RTRUE
|
|
?CND59: ICALL1 MINX-EATS-TRUFFLE
|
|
RTRUE
|
|
?CND57: SET 'X,ARCH-SNIFFS
|
|
EQUAL? HERE,ARCH4 /?CND61
|
|
RANDOM 100
|
|
LESS? 25,STACK /?CND61
|
|
SET 'X,MINX-DOINGS
|
|
?CND61: ICALL2 CTHE-PRINT,MINX
|
|
CALL2 PICK-NEXT,X
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL54: IN? TRUFFLE,L \?CCL65
|
|
ICALL1 MINX-EATS-TRUFFLE
|
|
RTRUE
|
|
?CCL65: LOC TRUFFLE
|
|
ZERO? STACK \?CND50
|
|
CALL2 DIG-UP-TRUFFLE?,L
|
|
ZERO? STACK \TRUE
|
|
?CND50: ICALL2 CTHE-PRINT,MINX
|
|
CALL2 PICK-NEXT,MINX-DOINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL43: FSET? PL,VEHICLE \?CCL69
|
|
IN? PL,L \?CCL69
|
|
MOVE MINX,PL
|
|
ICALL1 MINXTAB
|
|
ZERO? LIT? \?CCL74
|
|
PRINTI "Something furry"
|
|
JUMP ?CND72
|
|
?CCL74: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,MINX
|
|
?CND72: PRINTI " joins you"
|
|
ICALL2 ON-IN,PL
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL69: FSET? L,SURFACE /?CCL75
|
|
FSET? L,CONTAINER \?CND41
|
|
?CCL75: LOC L >NL
|
|
CALL2 BAD-MINX-PLACE?,NL
|
|
ZERO? STACK \?CTR79
|
|
FSET? L,CONTAINER \?CCL80
|
|
FSET? L,OPENED /?CCL80
|
|
?CTR79: CALL2 VISIBLE?,L
|
|
ZERO? STACK /?CCL87
|
|
ICALL1 MINXTAB
|
|
FSET? L,TRANSPARENT \?CCL90
|
|
ZERO? LIT? /?CCL90
|
|
ICALL2 CTHE-PRINT,MINX
|
|
JUMP ?CND88
|
|
?CCL90: PRINTI "Something"
|
|
?CND88: IN? TRUFFLE,L \?CCL95
|
|
BOR NEW-DBOX,3 >NEW-DBOX
|
|
REMOVE TRUFFLE
|
|
PRINTI " is eating "
|
|
PRINTB W?SOMETHING
|
|
JUMP ?CND93
|
|
?CCL95: PRINTI " moves restlessly"
|
|
?CND93: ICALL2 ON-IN,L
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL87: IN? TRUFFLE,L \?CND85
|
|
REMOVE TRUFFLE
|
|
?CND85: ZERO? NL \FALSE
|
|
REMOVE MINX
|
|
ICALL2 DEQUEUE,I-MINX
|
|
RFALSE
|
|
?CCL80: ZERO? V \?CND78
|
|
MOVE MINX,NL
|
|
RFALSE
|
|
?CND78: ICALL1 MINXTAB
|
|
ZERO? LIT? \?CCL102
|
|
PRINTI "Something"
|
|
JUMP ?CND100
|
|
?CCL102: IN? TRUFFLE,L \?CCL104
|
|
ICALL1 MINX-EATS-TRUFFLE
|
|
RTRUE
|
|
?CCL104: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,MINX
|
|
?CND100: PRINTC SP
|
|
ICALL1 SAY-LEAP
|
|
PRINTC 115
|
|
ICALL2 OUT-OF-LOC,L
|
|
PRINT PERIOD
|
|
MOVE MINX,NL
|
|
RTRUE
|
|
?CND41: LOC PL >PLL
|
|
SET 'DIR,P?NORTH
|
|
?PRG105: GETP L,DIR >TBL
|
|
ZERO? TBL /?CND107
|
|
GET TBL,XTYPE
|
|
BAND STACK,65280 >TYPE
|
|
EQUAL? TYPE,CONNECT,SCONNECT,X-EXIT /?CCL110
|
|
EQUAL? TYPE,DCONNECT \?CND107
|
|
GET TBL,XDATA
|
|
FSET? STACK,OPENED \?CND107
|
|
?CCL110: GET TBL,XROOM >NL
|
|
CALL2 BAD-MINX-PLACE?,NL
|
|
ZERO? STACK \?CND107
|
|
EQUAL? NL,PL,PLL \?CND107
|
|
MOVE MINX,NL
|
|
ICALL1 MINXTAB
|
|
ZERO? LIT? \?CCL120
|
|
PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
PRINTI " moving "
|
|
JUMP ?CND118
|
|
?CCL120: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " appears "
|
|
?CND118: EQUAL? NL,PL \?CND121
|
|
PRINTR "at your feet."
|
|
?CND121: PRINTR "nearby."
|
|
?CND107: DLESS? 'DIR,P?DOWN \?PRG105
|
|
RFALSE
|
|
|
|
|
|
.FUNCT MINXTAB
|
|
FSET MINX,SEEN
|
|
PRINT TAB
|
|
RFALSE
|
|
|
|
|
|
.FUNCT BAD-MINX-PLACE?,RM,X
|
|
ZERO? RM /TRUE
|
|
GETB NO-MINX,0 >X
|
|
INTBL? RM,NO-MINX+1,X,1 >X /TRUE
|
|
EQUAL? RM,IN-GARDEN \?CCL7
|
|
GRTR? PTIMER,1 /TRUE
|
|
?CCL7: EQUAL? RM,SADDLE \FALSE
|
|
IN? SADDLE,DACT \FALSE
|
|
IN? DACT,IN-SKY /TRUE
|
|
RFALSE
|
|
|
|
|
|
.FUNCT DIG-UP-TRUFFLE?,L,X
|
|
LOC OAK
|
|
EQUAL? L,STACK \?CCL3
|
|
SET 'X,OAK
|
|
JUMP ?CND1
|
|
?CCL3: LOC OAK2
|
|
EQUAL? L,STACK \?CCL5
|
|
SET 'X,OAK2
|
|
JUMP ?CND1
|
|
?CCL5: LOC OAK3
|
|
EQUAL? L,STACK \FALSE
|
|
SET 'X,OAK3
|
|
?CND1: FSET? X,TOUCHED /FALSE
|
|
ICALL2 OAK-FIND,X
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " snuffles inquisitively around the base of "
|
|
ICALL2 THE-PRINT,X
|
|
PRINTI ". She scratches around the roots, nosing aside leaves and dirt, and pulls up a "
|
|
ICALL2 DPRINT,TRUFFLE
|
|
PRINTI " with a triumphant mew. "
|
|
PRINT STR?594
|
|
RTRUE
|
|
|
|
|
|
.FUNCT DIG-UP-TRENCH
|
|
FCLEAR TRUFFLE,SEEN
|
|
REMOVE TRUFFLE
|
|
FCLEAR TRUFFLE,MUNGED
|
|
ICALL2 DEQUEUE,I-TRUFFLE
|
|
SET 'TRUFFLE-TIMER,0
|
|
MOVE TRENCH,HERE
|
|
FCLEAR TRENCH,NODESC
|
|
FSET TRENCH,OPENED
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL REPLACE-SYN?,TRENCH,W?ZZZP,W?MINXHOLE
|
|
ICALL REPLACE-ADJ?,TRENCH,W?ZZZP,W?MINX
|
|
ICALL2 CTHE-PRINT,MINX
|
|
IN? MINX,HERE /?CND1
|
|
MOVE MINX,HERE
|
|
PRINTI " leaves "
|
|
ICALL2 THE-PRINT,ARCH
|
|
PRINTI " and"
|
|
?CND1: PRINTI " runs its nose over the loose earth, snuffling hungrily. Then it paws a deep hole in "
|
|
ICALL2 THE-PRINT,GROUND
|
|
PRINTI ", roots up a dirty truffle and swallows it whole"
|
|
PRINT PTAB
|
|
PRINT STR?594
|
|
ZERO? DMODE \TRUE
|
|
ICALL2 RELOOK,TRUE-VALUE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SAY-LEAP,X
|
|
RANDOM 100 >X
|
|
LESS? X,33 \?CCL3
|
|
PRINTB W?LEAP
|
|
RTRUE
|
|
?CCL3: LESS? X,67 \?CND1
|
|
PRINTB W?BOUND
|
|
RTRUE
|
|
?CND1: PRINTB W?JUMP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-CORBIES,FEAR,SOUND,EMOTION,X
|
|
CALL1 PLAIN-ROOM?
|
|
ZERO? STACK /FALSE
|
|
PRINT TAB
|
|
FSET CORBIES,SEEN
|
|
SET 'P-THEM-OBJECT,CORBIES
|
|
CALL2 PICK-NEXT,CORBIE-SOUNDS >SOUND
|
|
CALL2 PICK-NEXT,MAD-CORBIES >EMOTION
|
|
LOC SCARE3
|
|
EQUAL? STACK,HERE /?CCL4
|
|
ZERO? BADKEY /?CND3
|
|
LOC BADKEY
|
|
EQUAL? STACK,PLAYER,HERE \?CND3
|
|
?CCL4: INC 'FEAR
|
|
CALL2 PICK-NEXT,FEAR-CORBIES >EMOTION
|
|
?CND3: RANDOM 100 >X
|
|
LESS? X,33 \?CCL11
|
|
PRINTI "Corbies "
|
|
PRINT SOUND
|
|
PRINT WITH
|
|
PRINT EMOTION
|
|
PRINTR " overhead."
|
|
?CCL11: LESS? X,67 \?CCL13
|
|
PRINTI "You can hear corbies "
|
|
JUMP ?CND9
|
|
?CCL13: PRINTI "Corbies "
|
|
RANDOM 100 >X
|
|
ZERO? FEAR \?CTR15
|
|
LESS? X,33 \?CCL16
|
|
?CTR15: PRINTI "circle "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND9
|
|
ZERO? FEAR \?CCL23
|
|
PRINTI "low "
|
|
JUMP ?CND9
|
|
?CCL23: PRINTI "high "
|
|
JUMP ?CND9
|
|
?CCL16: LESS? X,67 \?CCL25
|
|
PRINTI "dive "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL28
|
|
PRINTI "down from "
|
|
JUMP ?CND9
|
|
?CCL28: PRINTI "and swoop "
|
|
JUMP ?CND9
|
|
?CCL25: PRINTI "swoop "
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND9
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL33
|
|
PRINTI "low "
|
|
JUMP ?CND9
|
|
?CCL33: PRINTI "down from "
|
|
?CND9: PRINTI "overhead, "
|
|
PRINT SOUND
|
|
PRINTI "ing with "
|
|
PRINT EMOTION
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-COLOR,X
|
|
DLESS? 'GURDY-TIMER,1 \?CCL3
|
|
ICALL2 DEQUEUE,I-COLOR
|
|
SET 'GURDY-TIMER,0
|
|
FCLEAR ROSE-ROOM,SEEN
|
|
GETB PLAIN-ROOMS,0 >X
|
|
?PRG4: GETB PLAIN-ROOMS,X
|
|
FCLEAR STACK,SEEN
|
|
DLESS? 'X,1 \?PRG4
|
|
EQUAL? HERE,GURDY-ROOM \?CND8
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'GURDY-ROOM,FALSE-VALUE
|
|
PRINT TAB
|
|
PRINTI "The colors in the "
|
|
ICALL1 ROOM-OR-LAND
|
|
PRINTR " fade back to normal."
|
|
?CND8: SET 'GURDY-ROOM,FALSE-VALUE
|
|
RFALSE
|
|
?CCL3: EQUAL? HERE,GURDY-ROOM \FALSE
|
|
EQUAL? GURDY-TIMER,1,3 /FALSE
|
|
PRINT TAB
|
|
PRINTI "The heightened colors in the "
|
|
ICALL1 ROOM-OR-LAND
|
|
PRINTR " are starting to fade."
|
|
|
|
|
|
.FUNCT TURN-GURDY,X
|
|
SET 'X,TURN-GURDY-RIGHT
|
|
EQUAL? LAST-CRANK-DIR,RIGHT /?CND1
|
|
EQUAL? LAST-CRANK-DIR,LEFT /?CCL3
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND1
|
|
?CCL3: SET 'X,TURN-GURDY-LEFT
|
|
?CND1: ICALL X
|
|
RFALSE
|
|
|
|
|
|
.FUNCT FIND-CHAR?,LEN,OBJ
|
|
GET CHARLIST,0 >LEN
|
|
?PRG1: GET CHARLIST,LEN >OBJ
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CCL5
|
|
RETURN OBJ
|
|
?CCL5: DLESS? 'LEN,1 \?PRG1
|
|
CALL FIND-IN?,HERE,MONSTER
|
|
RSTACK
|
|
|
|
|
|
.FUNCT TURN-GURDY-RIGHT,M,P,WHO
|
|
CALL1 FIND-CHAR? >WHO
|
|
ZERO? WHO /?CND1
|
|
FSET? WHO,MONSTER \?CCL4
|
|
FSET? WHO,SLEEPING /?CND1
|
|
INC 'M
|
|
JUMP ?CND1
|
|
?CCL4: INC 'P
|
|
?CND1: SET 'LAST-CRANK-DIR,RIGHT
|
|
CALL TURN-GURDY?,W?RIGHT,STR?595
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ZERO? DPOINTER \?CCL11
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
SET 'GURDY-TIMER,RESET-GURDY
|
|
SET 'LIT?,TRUE-VALUE
|
|
PRINTI "A rainbow of dazzling spectra"
|
|
PRINT STR?596
|
|
PRINTI "! It swirls and blends with the "
|
|
CALL1 PLAIN-ROOM?
|
|
ZERO? STACK \?CCL14
|
|
EQUAL? HERE,GURDY-ROOM \?CND15
|
|
PRINTI "already intense "
|
|
?CND15: PRINTI "colors of the "
|
|
JUMP ?CND12
|
|
?CCL14: FSET HERE,SEEN
|
|
PRINTI "colorless "
|
|
?CND12: ICALL1 ROOM-OR-LAND
|
|
EQUAL? HERE,GURDY-ROOM \?CND17
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND17: SET 'GURDY-ROOM,HERE
|
|
ICALL2 QUEUE,I-COLOR
|
|
PRINTI ", creating rich, saturated hues that remind you of a postcard"
|
|
ZERO? M /?CND19
|
|
PRINT STR?597
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " seems unmoved by the display"
|
|
?CND19: PRINT PERIOD
|
|
CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
EQUAL? WHO,OWOMAN,SALT \?CCL25
|
|
ICALL2 LOVELY,WHO
|
|
RTRUE
|
|
?CCL25: ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " gapes at the display."
|
|
?CCL11: EQUAL? DPOINTER,1 \?CCL28
|
|
PRINTI "Strains of soothing melody fill the air"
|
|
PRINT STR?598
|
|
PRINT STR?599
|
|
PRINTI "as the liquid chords swell to a glorious crescendo, then fade into silence"
|
|
ZERO? M /?CND29
|
|
PRINTI ". Even "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " was not unmoved"
|
|
?CND29: PRINT PERIOD
|
|
CALL2 VISIBLE?,DACT
|
|
ZERO? STACK /?CCL33
|
|
FSET DACT,SEEN
|
|
ZERO? DACT-SLEEP /?CND34
|
|
EQUAL? DACT-SLEEP,3 /TRUE
|
|
INC 'DACT-SLEEP
|
|
RTRUE
|
|
?CND34: PRINT TAB
|
|
PRINTI "A tear trembles on "
|
|
ICALL2 THE-PRINT,DACT
|
|
PRINTI "'s beak. You watch as it"
|
|
ICALL2 DACT-TO-SLEEP,TRUE-VALUE
|
|
RTRUE
|
|
?CCL33: CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
EQUAL? WHO,OWOMAN,MAYOR,CLERIC \?CCL41
|
|
ICALL2 LOVELY,WHO
|
|
RTRUE
|
|
?CCL41: EQUAL? WHO,SALT \?CCL43
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Thought I heard music,"" remarks "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL43: ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " smiles at the sound."
|
|
?CCL28: EQUAL? DPOINTER,2 \?CCL46
|
|
PRINTI "A tide of flavorful aromas"
|
|
PRINT STR?596
|
|
PRINT STR?598
|
|
PRINTI "breathe deeply as the scents of a dozen exotic delicacies drift past your nostrils, one by one"
|
|
ZERO? M /?CND47
|
|
ICALL2 NOW-HUNGRY,WHO
|
|
?CND47: PRINT PERIOD
|
|
CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Ahhh,"" sighs "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL46: EQUAL? DPOINTER,3 \?CCL54
|
|
PRINTI "A mouthwatering cascade of flavor washes over your tongue"
|
|
PRINT STR?598
|
|
PRINT STR?599
|
|
PRINTI "to savor the taste of all your favorite dishes"
|
|
ZERO? M /?CND55
|
|
ICALL2 NOW-HUNGRY,WHO
|
|
?CND55: PRINT PERIOD
|
|
CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Mmmmm,"" sighs "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI ", smacking "
|
|
FSET? WHO,FEMALE \?CCL63
|
|
PRINTI "her"
|
|
JUMP ?CND61
|
|
?CCL63: PRINTI "his"
|
|
?CND61: PRINTR " lips."
|
|
?CCL54: EQUAL? DPOINTER,4 \?CND9
|
|
PRINTI "Invisible fingers of delight caress your skin! "
|
|
PRINT STR?598
|
|
PRINT STR?599
|
|
PRINTI "as a soothing, sensuous tingle spreads over every inch of your body"
|
|
ZERO? M /?CND65
|
|
PRINT PTAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTI " emits a brief moan of pleasure"
|
|
?CND65: PRINT PERIOD
|
|
CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Mmmmm,"" moans "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND9: ICALL2 RENEW-ALL-IN,INGURDY
|
|
PRINTI "A flood of joyful memory swells in your mind"
|
|
PRINT STR?598
|
|
PRINT STR?599
|
|
PRINTI "as old friends and forgotten secrets rise one by one from of the mists of time, then fade into obscurity"
|
|
ZERO? M /?CND71
|
|
ICALL2 LAST-MEAL,WHO
|
|
?CND71: PRINT PERIOD
|
|
CALL2 HAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " smiles wistfully."
|
|
|
|
|
|
.FUNCT LOVELY,WHO
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Lovely,"" remarks "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT LAST-MEAL,WHO
|
|
PRINT STR?597
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " seem"
|
|
FSET? WHO,PLURAL /?CND1
|
|
PRINTC 115
|
|
?CND1: PRINTI " to remember only its last meal"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOW-HUNGRY,WHO
|
|
PRINT STR?597
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " now looks hungrier than before"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT HAPPY-CHAR?,WHO
|
|
EQUAL? WHO,MINX,UNICORN,BABY /?CTR2
|
|
EQUAL? WHO,MAMA,DACT \FALSE
|
|
?CTR2: PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " seemed to enjoy that."
|
|
|
|
|
|
.FUNCT UNHAPPY-CHAR?,WHO
|
|
EQUAL? WHO,MINX,UNICORN,BABY /?CTR2
|
|
EQUAL? WHO,MAMA,DACT \FALSE
|
|
?CTR2: PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " gives you a hurt look."
|
|
|
|
|
|
.FUNCT TURN-GURDY-LEFT,M,P,WHO
|
|
CALL1 FIND-CHAR? >WHO
|
|
ZERO? WHO /?CND1
|
|
FSET? WHO,MONSTER \?CCL4
|
|
FSET? WHO,SLEEPING /?CND1
|
|
INC 'M
|
|
JUMP ?CND1
|
|
?CCL4: INC 'P
|
|
?CND1: SET 'LAST-CRANK-DIR,LEFT
|
|
CALL TURN-GURDY?,W?LEFT,STR?600
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ZERO? DPOINTER \?CCL11
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
ZERO? GURDY-TIMER /?CND12
|
|
SET 'GURDY-TIMER,0
|
|
ICALL2 DEQUEUE,I-COLOR
|
|
?CND12: PRINT XTHE
|
|
EQUAL? HERE,GURDY-ROOM \?CCL16
|
|
PRINTI "colors in the "
|
|
ICALL1 ROOM-OR-LAND
|
|
PRINTI " around you fade back to "
|
|
CALL1 PLAIN-ROOM?
|
|
ZERO? STACK /?CCL19
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
FCLEAR HERE,SEEN
|
|
PRINTB W?GRAY
|
|
JUMP ?CND14
|
|
?CCL19: PRINTI "normal"
|
|
JUMP ?CND14
|
|
?CCL16: CALL1 PLAIN-ROOM?
|
|
ZERO? STACK /?CCL22
|
|
PRINTI "grayness"
|
|
JUMP ?CND20
|
|
?CCL22: PRINTI "color"
|
|
?CND20: PRINTI " of the "
|
|
ICALL1 ROOM-OR-LAND
|
|
PRINTI " around you becomes pasty and dull"
|
|
?CND14: SET 'GURDY-ROOM,FALSE-VALUE
|
|
ZERO? M /?CND23
|
|
PRINTI ", an effect "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " seem"
|
|
FSET? WHO,PLURAL /?CND25
|
|
PRINTC 115
|
|
?CND25: PRINTI " not to mind in the least"
|
|
?CND23: PRINT PERIOD
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " glances around, puzzled."
|
|
?CCL11: EQUAL? DPOINTER,1 \?CCL30
|
|
PRINTI "A dreadful cacophony of random noise"
|
|
PRINT STR?596
|
|
PRINTI "! You cover your ears and wince until the onslaught fades to a welcome silence"
|
|
ZERO? M /?CND31
|
|
ICALL2 ANNOY-WHO,WHO
|
|
?CND31: PRINT PERIOD
|
|
CALL2 UNHAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Ouch,"" comments "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT STR?601
|
|
RTRUE
|
|
?CCL30: EQUAL? DPOINTER,2 \?CCL38
|
|
PRINTI "A nauseating cloud of foul, reeking stenches"
|
|
PRINT STR?596
|
|
PRINTI "! You cover your nose and try not to gag as the air clears all too slowly"
|
|
ZERO? M /?CND39
|
|
PRINTI ", noting that "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " seem"
|
|
FSET? WHO,PLURAL /?CND41
|
|
PRINTC 115
|
|
?CND41: PRINTI " to have enjoyed the disgusting onslaught"
|
|
?CND39: PRINT PERIOD
|
|
CALL2 UNHAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Put that away,"" coughs "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT STR?601
|
|
RTRUE
|
|
?CCL38: EQUAL? DPOINTER,3 \?CCL48
|
|
PRINTI "The unspeakable flavor of dead, rotting filth coats your tongue! You spit and cough uncontrollably until your mouth absorbs the dreadful taste"
|
|
ZERO? M /?CND49
|
|
ICALL2 ANNOY-WHO,WHO
|
|
?CND49: PRINT PERIOD
|
|
CALL2 UNHAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Enough,"" gags "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT STR?601
|
|
RTRUE
|
|
?CCL48: EQUAL? DPOINTER,4 \?CND9
|
|
PRINTI "Your skin erupts in a dozen places with a painful, burning itch! No scratching can relieve the suffering you endure until the invisible rash subsides"
|
|
ZERO? M /?CND56
|
|
ICALL2 ANNOY-WHO,WHO
|
|
?CND56: PRINT PERIOD
|
|
CALL2 UNHAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
PRINTI """Thanks,"" mutters "
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT STR?601
|
|
RTRUE
|
|
?CND9: ICALL2 MUNG-ALL-IN,INGURDY
|
|
PRINTI "A black tide of memory swells in your mind! You blush with shame as thoughtless deeds and filthy little secrets emerge from the dark reaches of your past to taunt you"
|
|
ZERO? M /?CND62
|
|
ICALL2 LAST-MEAL,WHO
|
|
?CND62: PRINT PERIOD
|
|
CALL2 UNHAPPY-CHAR?,WHO
|
|
ZERO? STACK \TRUE
|
|
ZERO? P /TRUE
|
|
FSET WHO,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " gives you a bitter glare."
|
|
|
|
|
|
.FUNCT ANNOY-WHO,WHO
|
|
PRINT STR?597
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINTI " now look"
|
|
FSET? WHO,PLURAL /?CND1
|
|
PRINTC 115
|
|
?CND1: PRINTI " more annoyed than ever"
|
|
RFALSE
|
|
|
|
|
|
.FUNCT TURN-GURDY?,WRD,STR
|
|
CALL2 NO-MAGIC-HERE?,GURDY
|
|
ZERO? STACK \TRUE
|
|
PRINTI "You turn the crank on "
|
|
ICALL2 THE-PRINT,GURDY
|
|
PRINTI " to the "
|
|
PRINTB WRD
|
|
PRINTI ", and watch as "
|
|
FSET? GURDY,OPENED \?CND3
|
|
PRINTI "wraiths of soft "
|
|
PRINT STR
|
|
PRINTR " light escape from the open box, dispersing with no effect."
|
|
?CND3: PRINTI "a soft "
|
|
PRINT STR
|
|
PRINTI " glow brightens the rim of the closed lid."
|
|
CRLF
|
|
RFALSE
|
|
|
|
|
|
.FUNCT ROOM-OR-LAND
|
|
FSET? HERE,INDOORS \?CND1
|
|
PRINTD GLOBAL-ROOM
|
|
RTRUE
|
|
?CND1: PRINTB W?LANDSCAPE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT REGAIN-SENSES
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
ICALL1 CARRIAGE-RETURNS
|
|
PRINTI "You slowly come to your senses."
|
|
CRLF
|
|
ZERO? VERBOSITY /FALSE
|
|
CRLF
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-STORM
|
|
DLESS? 'STORM-TIMER,1 \?CCL3
|
|
REMOVE TWISTER
|
|
SET 'STORM-TIMER,0
|
|
ICALL2 DEQUEUE,I-STORM
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PUTP IN-FARM,P?SDESC,0
|
|
FSET IN-FARM,SEEN
|
|
PRINT TAB
|
|
ICALL2 ITALICIZE,STR?602
|
|
PRINTI "! "
|
|
ICALL2 CTHE-PRINT,FARMHOUSE
|
|
PRINTI " strikes "
|
|
ICALL2 THE-PRINT,GROUND
|
|
PRINTI " with a sickening thud. You're thrown across the room, hit "
|
|
PRINTD HEAD
|
|
PRINTR " and...
|
|
|
|
|
|
|
|
|
|
|
|
A ray of sunlight opens your eyes."
|
|
?CCL3: EQUAL? STORM-TIMER,2 \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,FLOOR
|
|
PRINTR " lurches crazily underfoot."
|
|
?CCL5: EQUAL? STORM-TIMER,1 \FALSE
|
|
PRINTI " The entire "
|
|
PRINTD FARMHOUSE
|
|
PRINTI " shudders as "
|
|
ICALL2 THE-PRINT,TWISTER
|
|
PRINTR " loosens its grip. It feels as if you're starting to fall!"
|
|
|
|
|
|
.FUNCT I-TWISTER,X
|
|
FSET CORBIES,SEEN
|
|
PRINT TAB
|
|
DLESS? 'STORM-TIMER,1 \?CCL3
|
|
ICALL2 DEQUEUE,I-TWISTER
|
|
ICALL2 DEQUEUE,I-CORBIES
|
|
PRINTI "The wind "
|
|
EQUAL? HERE,IN-FARM \?CND4
|
|
PRINT STR?603
|
|
?CND4: PRINTI "rises to a deafening shriek, and blowing dust turns the day to night"
|
|
PRINT PTAB
|
|
ICALL2 ITALICIZE,STR?604
|
|
PRINTI "! The "
|
|
EQUAL? HERE,FARM-ROOM \?CND6
|
|
PRINTD TWISTER
|
|
PRINTI " rips a clapboard off "
|
|
ICALL2 THE-PRINT,FARMHOUSE
|
|
PRINTI ", blows it across the yard and drives it deep into your chest"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
?CND6: FSET FARMHOUSE,SEEN
|
|
SET 'STORM-TIMER,INIT-STORM-TIMER
|
|
ICALL2 QUEUE,I-STORM
|
|
PUTP IN-FARM,P?SDESC,DESCRIBE-IN-FARM
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PUTP IN-FARM,P?FNUM,0
|
|
ICALL NEW-EXIT?,IN-FARM,P?NORTH,1409,IN-FROON,FARM-DOOR
|
|
ICALL NEW-EXIT?,IN-FARM,P?OUT,1409,IN-FROON,FARM-DOOR
|
|
FSET? FARM-DOOR,OPENED \?CND8
|
|
FCLEAR FARM-DOOR,OPENED
|
|
PRINTD FARM-DOOR
|
|
PRINTI " slams shut as the "
|
|
?CND8: PRINTD FARMHOUSE
|
|
PRINTI " jerks violently upward, throwing you to your knees. You feel a strange whirling sensation as "
|
|
ICALL2 THE-PRINT,FLOOR
|
|
PRINTI " begins to dip and sway like the deck of a boat. A glance out "
|
|
ICALL2 THE-PRINT,FARM-WINDOW
|
|
PRINTI " confirms what your popping ears already know: "
|
|
ICALL2 CTHE-PRINT,FARMHOUSE
|
|
PRINTI " is soaring high above the Fields of Frotzen, caught in the vortex of a mighty "
|
|
PRINTD TWISTER
|
|
PRINTC 33
|
|
CRLF
|
|
ICALL2 REFRESH-MAP,FALSE-VALUE
|
|
RTRUE
|
|
?CCL3: EQUAL? STORM-TIMER,1 \?CCL11
|
|
PRINTI "The wind "
|
|
EQUAL? HERE,IN-FARM \?CND12
|
|
PRINT STR?603
|
|
?CND12: PRINTI "grows from a rumble to a roar as the churning vortex whirls closer."
|
|
CRLF
|
|
EQUAL? HERE,IN-FARM /TRUE
|
|
FSET? FARM-DOOR,OPENED /?CND14
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
FSET FARM-DOOR,OPENED
|
|
PRINT TAB
|
|
ICALL2 ITALICIZE,STR?605
|
|
PRINTI "! "
|
|
ICALL2 CTHE-PRINT,FARM-DOOR
|
|
PRINTI " blows open in the gale."
|
|
CRLF
|
|
?CND14: CALL2 VISIBLE?,MINX
|
|
ZERO? STACK /TRUE
|
|
MOVE MINX,IN-FARM
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " races for the safety of "
|
|
ICALL2 THE-PRINT,FARM
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL11: EQUAL? STORM-TIMER,2 \?CCL21
|
|
MOVE TWISTER,HERE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINTI "An ominous rumble "
|
|
SET 'X,W?SOUTHEAST
|
|
EQUAL? HERE,IN-FARM \?CND22
|
|
FSET TWISTER,NODESC
|
|
SET 'X,W?WINDOW
|
|
PRINT STR?603
|
|
?CND22: PRINTI "draws your eyes to the "
|
|
PRINTB X
|
|
PRINTI ", where a dark, boiling thundercloud is racing across the fields"
|
|
PRINT PTAB
|
|
ICALL1 KERBLAM
|
|
PRINTR "Lightning heralds the approach of a deadly funnel!"
|
|
?CCL21: EQUAL? STORM-TIMER,3 \?CCL25
|
|
PRINTI "The sky "
|
|
EQUAL? HERE,IN-FARM \?CND26
|
|
PRINTI "outside "
|
|
?CND26: PRINTI "is becoming very dark."
|
|
CRLF
|
|
CALL2 VISIBLE?,MINX
|
|
ZERO? STACK /TRUE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTR " sniffs the air and whimpers."
|
|
?CCL25: PRINTR "The air feels unusually still and expectant."
|
|
|
|
|
|
.FUNCT I-FROON
|
|
EQUAL? HERE,IN-FARM \?CND1
|
|
GRTR? FSCRIPT,2 \FALSE
|
|
FSET? FCROWD,SEEN \?CND5
|
|
FCLEAR FCROWD,SEEN
|
|
RFALSE
|
|
?CND5: FSET FCROWD,SEEN
|
|
PRINT TAB
|
|
PRINTR "The cheers outside show no sign of stopping."
|
|
?CND1: PRINT TAB
|
|
IGRTR? 'FSCRIPT,11 \?CCL9
|
|
PRINTI "As you stand contemplating the natural beauty of the "
|
|
PRINTD FROON
|
|
PRINTI "ian landscape, another "
|
|
PRINTD FARMHOUSE
|
|
PRINTI " falls out of the sky and lands on "
|
|
PRINTD HEAD
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
?CCL9: EQUAL? FSCRIPT,11 \?CCL11
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PUTP IN-FROON,P?HEAR,0
|
|
REMOVE MAYOR
|
|
SET 'P-HIM-OBJECT,NOT-HERE-OBJECT
|
|
REMOVE LADY
|
|
SET 'P-HER-OBJECT,NOT-HERE-OBJECT
|
|
REMOVE FCROWD
|
|
SET 'P-THEM-OBJECT,NOT-HERE-OBJECT
|
|
PRINTI "With a peremptory sniff, "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTI " snaps "
|
|
ICALL2 THE-PRINT,JBOX
|
|
PRINTI " shut"
|
|
PRINT PTAB
|
|
PRINTI """Very well,"" he sighs. ""I'm sure there are plenty of other heroes who would be more than happy to accept our humble gifts and everlasting adulation.""
|
|
Grumbling with indignation, he and the other folk sullenly retreat into "
|
|
ICALL2 THE-PRINT,FBEDS
|
|
PRINTR ". In moments, you are completely alone."
|
|
?CCL11: EQUAL? FSCRIPT,10 \?CCL13
|
|
PRINTI """The day is getting long,"" notes "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTI " with obvious irritation. ""Please choose one of the keys. "
|
|
ICALL2 ITALICIZE,STR?606
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CCL13: EQUAL? FSCRIPT,9 \?CCL15
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " taps his foot impatiently. """
|
|
PRINT CYOUR
|
|
ICALL1 HONORED-ONE
|
|
PRINTR " will be so kind as to select a key?"""
|
|
?CCL15: EQUAL? FSCRIPT,8 \?CCL17
|
|
PRINTI """Choose any key you like,"" prompts "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTR " helpfully."
|
|
?CCL17: EQUAL? FSCRIPT,7 \?CCL19
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
FSET JBOX,OPENED
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " opens "
|
|
ICALL2 THE-PRINT,JBOX
|
|
PRINTI " with a grand flourish.
|
|
""Behold!"" he cries. ""Herein lie the Keys to the Kingdom of "
|
|
PRINTD FROON
|
|
PRINTI ". This gift is the greatest honor my people can bestow. Humbly, and with eternal gratitude, do we offer one to you."""
|
|
CRLF
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,FCROWD
|
|
PRINTR " redoubles its cheering."
|
|
?CCL19: EQUAL? FSCRIPT,6 \?CCL21
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE JBOX,MAYOR
|
|
PRINTI """Such a mighty deed commands many thanks,"" continues "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTI ". ""Bring me the Cask!""
|
|
""The Cask! "
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " sends for the Cask!"" whispers "
|
|
ICALL2 THE-PRINT,FCROWD
|
|
PRINTI " as a servant disappears into "
|
|
ICALL2 THE-PRINT,FBEDS
|
|
PRINTI ". Moments later he returns bearing a small "
|
|
PRINTD JBOX
|
|
PRINTI ", which is delivered to "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL21: EQUAL? FSCRIPT,5 \?CCL23
|
|
PRINTI """For over three hundred years, my people have suffered in the shadow of the Heeled One,"" explains "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTI ", glancing hatefully at "
|
|
ICALL2 THE-PRINT,BOOT
|
|
PRINTI ". ""At long last, his evil-smelling reign is at an end!""
|
|
""Huzzah!"" cries "
|
|
ICALL2 THE-PRINT,FCROWD
|
|
PRINTI ", dancing gleefully around "
|
|
ICALL2 THE-PRINT,FARMHOUSE
|
|
PRINTR ". ""Huzzah! The Boot is licked!"""
|
|
?CCL23: EQUAL? FSCRIPT,4 \?CCL25
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE MAYOR,IN-FROON
|
|
ICALL2 SEE-CHARACTER,MAYOR
|
|
FSET FCROWD,NODESC
|
|
PUTP IN-FROON,P?HEAR,MAYOR
|
|
PRINTI "An important-looking man, tinier than all the rest, emerges from "
|
|
ICALL2 THE-PRINT,FCROWD
|
|
PRINT PTAB
|
|
PRINTI """Greetings, brave "
|
|
ICALL1 SAY-SORC
|
|
PRINTI ","" he mumbles, grovelling at your feet. ""I am Grope, Mayor of the City of "
|
|
PRINTD FROON
|
|
PRINTI ". On behalf of us all, I welcome you!""
|
|
""Welcome! Welcome to the "
|
|
ICALL1 SAY-SORC
|
|
PRINTI "!"" echoes "
|
|
ICALL2 THE-PRINT,FCROWD
|
|
PRINTR " joyfully."
|
|
?CCL25: EQUAL? FSCRIPT,3 \?CCL27
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE FCROWD,IN-FROON
|
|
SET 'P-THEM-OBJECT,FCROWD
|
|
PUTP IN-FROON,P?HEAR,FCROWD
|
|
FSET LADY,NODESC
|
|
PRINTI """The Heeled One is fallen! Come see! Come see!""
|
|
More and more of the little folk emerge from "
|
|
ICALL2 THE-PRINT,FBEDS
|
|
PRINTR ", staring first at the crushed boot, then at you. Soon you're completely surrounded by joyous little faces."
|
|
?CCL27: EQUAL? FSCRIPT,2 \FALSE
|
|
ICALL2 CTHE-PRINT,LADY
|
|
PRINTI " tiptoes over to "
|
|
ICALL2 THE-PRINT,BOOT
|
|
PRINTR " and gawks at it, awestruck. She gingerly reaches out to tickle the lifeless sole. Nothing happens. A broad grin spreads across her childlike face.
|
|
""It's dead,"" she squeaks, turning to look at you. ""You killed it."""
|
|
|
|
|
|
.FUNCT SAY-SORC
|
|
PRINTI "sorcere"
|
|
FSET? PLAYER,FEMALE \?CND1
|
|
PRINTI "ss"
|
|
RTRUE
|
|
?CND1: PRINTC 114
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-SHILL
|
|
FSET? SHILL,NODESC \?CCL3
|
|
FCLEAR SHILL,NODESC
|
|
RFALSE
|
|
?CCL3: IGRTR? 'SHILL-TIMER,5 \?CCL5
|
|
ICALL2 DEQUEUE,I-SHILL
|
|
SET 'SHILL-TIMER,0
|
|
ICALL2 VANISH,SHILL
|
|
EQUAL? HERE,ON-WHARF \FALSE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SHILL
|
|
PRINTR " slowly floats out of sight."
|
|
?CCL5: EQUAL? HERE,ON-WHARF \FALSE
|
|
EQUAL? SHILL-TIMER,4 \?CCL11
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SHILL
|
|
PRINTR " is beginning to float away."
|
|
?CCL11: EQUAL? SHILL-TIMER,1 \FALSE
|
|
PRINT TAB
|
|
ICALL1 SEE-SHILL
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SEE-SHILL
|
|
FSET SHILL,SEEN
|
|
SET 'SHILL-TIMER,1
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,SHILL
|
|
MOVE SHILL,COVE
|
|
PRINTI "A movement draws your eye to the water, where "
|
|
ICALL2 PRINTA,SHILL
|
|
PRINTR " is bobbing on the waves."
|
|
|
|
|
|
.FUNCT I-DACT,V,X
|
|
CALL2 VISIBLE?,DACT >V
|
|
ZERO? DACT-SLEEP /?CND1
|
|
DEC 'DACT-SLEEP
|
|
EQUAL? DACT-SLEEP,3 /FALSE
|
|
ZERO? V /?CND3
|
|
PRINT TAB
|
|
?CND3: ZERO? DACT-SLEEP \?CCL9
|
|
ICALL1 WAKE-DACT
|
|
RTRUE
|
|
?CCL9: ZERO? V /FALSE
|
|
ICALL2 CTHE-PRINT,DACT
|
|
EQUAL? DACT-SLEEP,1 \?CND11
|
|
PRINTR " snorts restlessly. It looks as if it's about to wake up."
|
|
?CND11: PRINTR " caws softly in its dreams."
|
|
?CND1: ZERO? V /FALSE
|
|
FSET? DACT,SEEN \?CCL17
|
|
FCLEAR DACT,SEEN
|
|
RFALSE
|
|
?CCL17: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
FSET DACT,SEEN
|
|
SET 'X,HAPPY-DACT
|
|
EQUAL? HERE,IN-SKY \?CCL21
|
|
SET 'X,FLYING-DACT
|
|
JUMP ?CND19
|
|
?CCL21: FSET? DACT,MUNGED \?CND19
|
|
SET 'X,SICK-DACT
|
|
?CND19: PRINT TAB
|
|
ICALL2 CTHE-PRINT,DACT
|
|
CALL2 PICK-NEXT,X
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT WAKE-DACT
|
|
ICALL REPLACE-ADJ?,DACT,W?SLEEPING,W?AWAKE
|
|
FCLEAR DACT,SLEEPING
|
|
FSET DACT,SEEN
|
|
SET 'DACT-SLEEP,0
|
|
CALL2 VISIBLE?,DACT
|
|
ZERO? STACK /TRUE
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,DACT
|
|
PRINTI " shakes its head, blinks its eyes and yawns stupidly."
|
|
CRLF
|
|
FSET? DACT,MUNGED \TRUE
|
|
IN? SADDLE,DACT \TRUE
|
|
MOVE SADDLE,HERE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,SADDLE
|
|
PRINT SON
|
|
ICALL2 THE-PRINT,DACT
|
|
PRINTI "'s back aggravates his wound. So he shakes it off with a violent twist"
|
|
IN? PLAYER,SADDLE \?CND7
|
|
MOVE PLAYER,HERE
|
|
PRINTI ", which sends you sprawling to "
|
|
ICALL2 THE-PRINT,GROUND
|
|
ICALL1 RELOOK
|
|
RTRUE
|
|
?CND7: PRINT PERIOD
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-GRINDER-APPEARS
|
|
EQUAL? HERE,AT-GATE \FALSE
|
|
DLESS? 'GRTIMER,1 \?CCL5
|
|
SET 'GRTIMER,0
|
|
ICALL2 DEQUEUE,I-GRINDER-APPEARS
|
|
MOVE GRINDER,AT-GATE
|
|
ICALL1 SEE-GRINDER
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "Blue planes of energy form in the space around you. Their patterns of intersection whirl around a vortex of laughter, growing in power and malevolence.."
|
|
PRINT PERIOD
|
|
ZERO? DMODE /?CCL7
|
|
EQUAL? PRIOR,SHOWING-INV,SHOWING-STATS \TRUE
|
|
?CCL7: ICALL2 RELOOK,TRUE-VALUE
|
|
RTRUE
|
|
?CCL5: EQUAL? GRTIMER,1 \?CCL11
|
|
PRINT TAB
|
|
PRINTR "The invisible voice chuckles again, and the tension in the air rises."
|
|
?CCL11: EQUAL? GRTIMER,2 \FALSE
|
|
PRINT TAB
|
|
PRINTI "A burst of hollow laughter echoes up and down the street. You turn, but see no one"
|
|
PRINT PTAB
|
|
PRINTR "There's a faint, electrical tension in the air."
|
|
|
|
|
|
.FUNCT SEE-GRINDER
|
|
ICALL2 SEE-CHARACTER,GRINDER
|
|
ICALL2 QUEUE,I-GRINDER
|
|
SET 'LAST-MONSTER,GRINDER
|
|
SET 'LAST-MONSTER-DIR,FALSE-VALUE
|
|
FSET GRINDER,SEEN
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-GRINDER
|
|
EQUAL? HERE,AT-GATE \FALSE
|
|
INC 'GRTIMER
|
|
PRINT TAB
|
|
GETP GRINDER,P?ENDURANCE
|
|
LESS? STACK,1 \?CND3
|
|
ICALL1 EXIT-GRINDER
|
|
ICALL2 CTHE-PRINT,GURDY
|
|
PRINTI " falls from "
|
|
ICALL2 THE-PRINT,GRINDER
|
|
PRINTR "'s dying grasp. Moments later, his body dissolves in a puff of steam."
|
|
?CND3: ICALL2 NEXT-ENDURANCE?,GRINDER
|
|
EQUAL? GRTIMER,1 \?CCL7
|
|
ICALL2 CTHE-PRINT,GRINDER
|
|
PRINTI " looks you up and down. ""Peasants,"" he sniffs, adjusting a knob on his "
|
|
PRINTD GURDY
|
|
PRINTI ". ""Like unto sheep.""
|
|
He turns the crank of "
|
|
ICALL2 THE-PRINT,GURDY
|
|
PRINTI ", and the air is filled with the combined stench of five herds of sheep, accompanied by a cacophany of hateful bleating."
|
|
CRLF
|
|
JUMP ?CND5
|
|
?CCL7: EQUAL? GRTIMER,2 \?CCL9
|
|
FCLEAR NYMPH,LIVING
|
|
PRINTI "Ignoring you for the moment, "
|
|
ICALL2 THE-PRINT,GRINDER
|
|
PRINTI " strides across to "
|
|
ICALL2 THE-PRINT,GUILD-HALL
|
|
PRINTI "'s entrance.
|
|
A warning nymph appears beside his "
|
|
ICALL1 NYMPH-SAYS
|
|
PRINTI "... Oomph!"" This last exclamation is "
|
|
ICALL2 THE-PRINT,NYMPH
|
|
PRINTI "'s last; for, quick as a wink, "
|
|
ICALL2 THE-PRINT,GRINDER
|
|
PRINTR " snatches it out of the air and crushes it in his fist. ""Miserable pests."""
|
|
?CCL9: EQUAL? GRTIMER,3 \?CCL11
|
|
ICALL2 CTHE-PRINT,GRINDER
|
|
PRINTI " turns around. ""Still here?"" he cries, adjusting his "
|
|
PRINTD GURDY
|
|
PRINT PTAB
|
|
PRINTI "He turns the crank again, and a wall of imaginary flame springs up around you. You wail as your skin burns with synthetic agony."
|
|
CRLF
|
|
JUMP ?CND5
|
|
?CCL11: EQUAL? GRTIMER,4 \?CND5
|
|
PRINTI """Guess I'll just have to finish you off."""
|
|
CRLF
|
|
PRINT TAB
|
|
?CND5: GRTR? GRTIMER,3 \?CND13
|
|
ICALL2 CTHE-PRINT,GRINDER
|
|
PRINTI " turns the crank, and "
|
|
CALL2 PICK-NEXT,TORTURES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
?CND13: ZERO? AUTO /?CND15
|
|
ICALL1 BMODE-ON
|
|
?CND15: GETP GRINDER,P?STRENGTH
|
|
RANDOM STACK
|
|
SUB 0,STACK
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-DORN,X,L,DIR,TBL,DEST,DAMAGE
|
|
LOC DORN >L
|
|
EQUAL? L,HERE \?CCL3
|
|
FSET DORN,SEEN
|
|
PRINT TAB
|
|
GETP DORN,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL6
|
|
PRINTI "Howling with pain, "
|
|
ICALL2 THE-PRINT,DORN
|
|
PRINTI " beats a hasty retreat."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,DORN
|
|
RTRUE
|
|
?CCL6: FSET? DORN,MUNGED \?CCL8
|
|
ICALL2 CTHE-PRINT,DORN
|
|
DLESS? 'DORN-TIMER,1 \?CCL11
|
|
SET 'DORN-TIMER,0
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
FCLEAR DORN,MUNGED
|
|
PRINTR " sniffs away the last of its tears."
|
|
?CCL11: EQUAL? DORN-TIMER,1 \?CCL13
|
|
PRINTR " blows its nose noisily. It looks as if it's recovering."
|
|
?CCL13: EQUAL? DORN-TIMER,2 \?CND9
|
|
PRINTR " flails around the room, its eyes streaming. ""Hurumph!"" it bawls."
|
|
?CND9: PRINTR " almost crashes into you in its blind frenzy. ""Hurumph!"" it cries, its face soaked with tears."
|
|
?CCL8: FSET? DORN,SURPRISED \?CND4
|
|
ICALL2 SEE-MONSTER,DORN
|
|
ICALL2 CTHE-PRINT,DORN
|
|
PRINTR " begins turning its 69 eyes in your direction."
|
|
?CND4: ICALL2 NEXT-ENDURANCE?,DORN
|
|
CALL2 MONSTER-STRIKES?,DORN >DAMAGE
|
|
ICALL2 CTHE-PRINT,DORN
|
|
ZERO? DAMAGE /?CND16
|
|
CALL2 PICK-NEXT,DORN-HITS
|
|
PRINT STACK
|
|
PRINTI ", and you feel strength drain from your body."
|
|
CRLF
|
|
ICALL UPDATE-STAT,DAMAGE,STRENGTH
|
|
RTRUE
|
|
?CND16: CALL2 PICK-NEXT,DORN-MISSES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL3: FSET? DORN,MUNGED \?CCL19
|
|
DLESS? 'DORN-TIMER,1 \FALSE
|
|
SET 'DORN-TIMER,0
|
|
FCLEAR DORN,MUNGED
|
|
RFALSE
|
|
?CCL19: INTBL? HERE,DORN-ROOMS+1,5,1 >X /?CND1
|
|
REMOVE DORN
|
|
FCLEAR DORN,SLEEPING
|
|
FCLEAR DORN,MUNGED
|
|
FSET DORN,SURPRISED
|
|
SET 'DORN-TIMER,0
|
|
FSET DORN,NODESC
|
|
ICALL2 DEQUEUE,I-DORN
|
|
RFALSE
|
|
?CND1: CALL MOVE-MONSTER?,DORN,TRUE-VALUE >DIR
|
|
ZERO? DIR /FALSE
|
|
FSET DORN,SEEN
|
|
PRINT TAB
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND25
|
|
PRINTI """Hurumph!"" "
|
|
?CND25: ICALL2 CTHE-PRINT,DORN
|
|
EQUAL? DIR,W?UP,W?DOWN \?CND27
|
|
PRINTI " clambers "
|
|
PRINTB DIR
|
|
PRINTR " the steps."
|
|
?CND27: PRINT STR?581
|
|
PRINTB DIR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-ONION,V
|
|
CALL2 VISIBLE?,ONION >V
|
|
DLESS? 'ONION-TIMER,1 \?CCL3
|
|
SET 'ONION-TIMER,0
|
|
ICALL2 DEQUEUE,I-ONION
|
|
ZERO? DORN-TIMER /?CND4
|
|
SET 'DORN-TIMER,1
|
|
?CND4: ZERO? V /FALSE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,ONION
|
|
PRINTR "'s sting diminishes enough to dry your eyes."
|
|
?CCL3: ZERO? V /FALSE
|
|
PRINT TAB
|
|
IN? DORN,HERE \?CND9
|
|
FSET? DORN,MUNGED /?CND9
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
FSET DORN,MUNGED
|
|
SET 'DORN-TIMER,4
|
|
FSET DORN,SEEN
|
|
ICALL2 CTHE-PRINT,DORN
|
|
PRINTI "'s multiple eyes turn red and watery under the pungent influence of "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTI ". ""Hurumph!"" it wails, utterly helpless"
|
|
PRINT PTAB
|
|
?CND9: EQUAL? ONION-TIMER,1 \?CCL15
|
|
ICALL2 CTHE-PRINT,ONION
|
|
PRINTR " seems to be losing its potency."
|
|
?CCL15: EQUAL? ONION-TIMER,2 \?CND13
|
|
PRINTI "You rub your swollen eyes to lessen "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTR "'s pungent sting."
|
|
?CND13: PRINTI "Your eyes become red and itchy as "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTI "'s potent miasma"
|
|
PRINT STR?596
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-MOSS
|
|
FSET? THIS-MOSS,SEEN \?CCL3
|
|
FCLEAR THIS-MOSS,SEEN
|
|
SET 'MOSS-TIMER,6
|
|
RFALSE
|
|
?CCL3: DLESS? 'MOSS-TIMER,1 \?CCL5
|
|
PRINT TAB
|
|
ICALL1 DO-MOSS
|
|
RTRUE
|
|
?CCL5: EQUAL? MOSS-TIMER,2,4 /FALSE
|
|
PRINT TAB
|
|
EQUAL? MOSS-TIMER,1 \?CCL9
|
|
PRINTI "Those itchy fingers are becoming quite a nuisance"
|
|
GRTR? MOSSES,1 \?CND10
|
|
PRINTI " again"
|
|
?CND10: PRINT PERIOD
|
|
RTRUE
|
|
?CCL9: EQUAL? MOSS-TIMER,3 \?CCL13
|
|
PRINTR "You give your fingers a satisfying scratch."
|
|
?CCL13: EQUAL? MOSS-TIMER,5 \FALSE
|
|
ICALL REPLACE-SYN?,HANDS,W?ZZZP,W?ITCH
|
|
ICALL REPLACE-ADJ?,HANDS,W?ZZZP,W?ITCHY
|
|
PRINTR "You idly scratch an itchy finger."
|
|
|
|
|
|
.FUNCT DO-MOSS,X
|
|
SET 'THIS-MOSS,FALSE-VALUE
|
|
SET 'MOSS-TIMER,0
|
|
ICALL2 DEQUEUE,I-MOSS
|
|
FSET HANDS,MUNGED
|
|
ICALL REPLACE-ADJ?,HANDS,W?ITCHY,W?LONG
|
|
ICALL REPLACE-ADJ?,HANDS,W?ZZZP,W?SLENDER
|
|
ZERO? LIT? /?CCL3
|
|
CALL1 LIGHT-SOURCE? >X
|
|
PRINTI "Damn that itch! You hold your bothersome hand up to "
|
|
ZERO? X /?CCL6
|
|
ICALL2 THE-PRINT,X
|
|
JUMP ?CND4
|
|
?CCL6: PRINTI "the light"
|
|
?CND4: GRTR? MOSSES,1 \?CCL9
|
|
PRINTI " and flex your fingers again, noting their improved agility"
|
|
JUMP ?CND1
|
|
?CCL9: PRINTI "... and gasp with shock!"
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "Your fingers, once fat and stubby, are now long and slender as a pianist's. You flex the new digits one at a time; they respond with unfamiliar agility. Fact is, your whole body feels tighter and more coordinated than ever"
|
|
JUMP ?CND1
|
|
?CCL3: PRINTI "Your fingers tingle oddly, and the itch disappears"
|
|
?CND1: PRINT PERIOD
|
|
ICALL UPDATE-STAT,8,DEXTERITY,TRUE-VALUE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-UNICORN
|
|
EQUAL? HERE,IN-STABLE \FALSE
|
|
FSET? STALL,OPENED \?CCL5
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,UNICORN
|
|
PRINTI " wastes no time edging her way out of "
|
|
ICALL2 THE-PRINT,STALL
|
|
IN? CHEST,HERE \?CND6
|
|
PRINT PERIOD
|
|
ICALL1 UNICORN-OPENS-CHEST
|
|
RTRUE
|
|
?CND6: PRINTI ". She "
|
|
ICALL1 BYE-UNICORN
|
|
RTRUE
|
|
?CCL5: FSET? UNICORN,SEEN \?CCL9
|
|
FCLEAR UNICORN,SEEN
|
|
RFALSE
|
|
?CCL9: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
FSET UNICORN,SEEN
|
|
SET 'P-HER-OBJECT,UNICORN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,UNICORN
|
|
PRINTR " whinnies sadly."
|
|
|
|
|
|
.FUNCT I-BABY
|
|
EQUAL? HERE,JUN0 \FALSE
|
|
FSET? BABY,SEEN \?CCL5
|
|
FCLEAR BABY,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
FSET BABY,SEEN
|
|
SET 'P-HIM-OBJECT,BABY
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,BABY
|
|
PRINTI " bellows helplessly"
|
|
CALL2 VISIBLE?,MAMA
|
|
ZERO? STACK /?CND7
|
|
FSET MAMA,SEEN
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND7
|
|
SET 'P-HER-OBJECT,MAMA
|
|
PRINTI ", and its mother responds"
|
|
?CND7: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-MAMA,DAMAGE,TBL,LEN,X,L,NL,PL,PLL,DIR
|
|
LOC MAMA >L
|
|
LOC PLAYER >PL
|
|
CALL2 VISIBLE?,MAMA
|
|
ZERO? STACK /?CND1
|
|
FSET? MAMA,MONSTER /?CND3
|
|
FSET? MAMA,SEEN \?CCL7
|
|
FCLEAR MAMA,SEEN
|
|
RFALSE
|
|
?CCL7: FSET? MAMA,MONSTER /?CND5
|
|
RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
?CND5: SET 'P-HER-OBJECT,MAMA
|
|
FSET MAMA,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MAMA
|
|
PRINTI " bellows"
|
|
CALL2 VISIBLE?,BABY
|
|
ZERO? STACK /?CND10
|
|
FSET BABY,SEEN
|
|
PRINTI " impotently"
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND10
|
|
SET 'P-HIM-OBJECT,BABY
|
|
PRINTI ", and her baby responds"
|
|
?CND10: PRINT PERIOD
|
|
RTRUE
|
|
?CND3: SET 'P-HER-OBJECT,MAMA
|
|
FSET MAMA,SEEN
|
|
GETP MAMA,P?ENDURANCE
|
|
LESS? STACK,1 \?CND14
|
|
PRINTI " Bellowing with defeat, "
|
|
ICALL2 THE-PRINT,MAMA
|
|
PRINTI " limps away into the jungle."
|
|
CRLF
|
|
ICALL2 KILL-MONSTER,MAMA
|
|
RTRUE
|
|
?CND14: CALL2 STILL-SLEEPING?,MAMA
|
|
ZERO? STACK \TRUE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MAMA
|
|
EQUAL? L,PL \?CCL20
|
|
EQUAL? L,MAW \?CND21
|
|
CALL2 PICK-NEXT,MAMA-CLIMBS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND21: CALL2 MONSTER-STRIKES?,MAMA >X
|
|
PRINTI " charges you"
|
|
ZERO? X /?CND23
|
|
ZERO? STATIC \?CCL27
|
|
PRINTI ". Ooof!"
|
|
CRLF
|
|
JUMP ?CND25
|
|
?CCL27: PRINT PERIOD
|
|
?CND25: CALL MSPARK?,MAMA,X
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
?CND23: PRINTR ", missing by a hair."
|
|
?CCL20: EQUAL? PL,MAW \?CND18
|
|
MOVE MAMA,MAW
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINTI " clambers onto the bottom of "
|
|
ICALL2 THE-PRINT,PL
|
|
PRINTR ", snorting with rage!"
|
|
?CND18: PRINTI " circles "
|
|
ICALL2 THE-PRINT,PL
|
|
PRINTR ", snorting angrily."
|
|
?CND1: FSET? MAMA,MONSTER \FALSE
|
|
GETP MAMA,P?LAST-LOC >NL
|
|
ZERO? NL /?CND31
|
|
MOVE MAMA,NL
|
|
EQUAL? NL,HERE \?CND31
|
|
SET 'P-HER-OBJECT,MAMA
|
|
PUTP MAMA,P?LAST-LOC,FALSE-VALUE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MAMA
|
|
PRINTR " storms into view!"
|
|
?CND31: CALL2 WEARING-MAGIC?,CLOAK
|
|
ZERO? STACK \?CND35
|
|
LOC PL >PLL
|
|
SET 'DIR,P?NORTH
|
|
?PRG37: GETP L,DIR >TBL
|
|
ZERO? TBL /?CND39
|
|
GET TBL,XTYPE
|
|
BAND STACK,65280
|
|
EQUAL? STACK,CONNECT,SCONNECT \?CND39
|
|
GET TBL,XROOM >X
|
|
EQUAL? X,AT-FALLS /?CND39
|
|
EQUAL? X,PL,PLL \?CND39
|
|
PUTP MAMA,P?LAST-LOC,X
|
|
RFALSE
|
|
?CND39: DLESS? 'DIR,P?NW \?PRG37
|
|
?CND35: PUTP MAMA,P?LAST-LOC,0
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-IMPS
|
|
EQUAL? HERE,APLANE \FALSE
|
|
EQUAL? ABOVE,OPLAIN \FALSE
|
|
FSET IMPS,SEEN
|
|
SET 'P-THEM-OBJECT,IMPS
|
|
PRINT TAB
|
|
DLESS? 'IMPSAY,1 \?CCL7
|
|
ICALL2 DEQUEUE,I-IMPS
|
|
SET 'IMPSAY,3
|
|
ICALL2 QUEUE,I-IMPS-TAKE
|
|
MOVE COCO,APLANE
|
|
SET 'P-IT-OBJECT,COCO
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINTI """Catch!"" cries the "
|
|
PRINT STR?607
|
|
PRINTI ", lobbing "
|
|
ICALL2 THE-PRINT,COCO
|
|
PRINTI " high into the air"
|
|
PRINT PTAB
|
|
PRINTI """Got it."" A loud-mouthed Implementor jumps out of his seat, steps backwards to grab the falling "
|
|
PRINTD COCO
|
|
PRINTI "... and plows directly into you"
|
|
PRINT PTAB
|
|
ICALL2 ITALICIZE,STR?608
|
|
PRINTI ". "
|
|
ICALL2 CTHE-PRINT,COCO
|
|
PRINTR " skitters across the plane."
|
|
?CCL7: EQUAL? IMPSAY,3 \?CCL9
|
|
PRINTR "One of the Implementors notices your arrival. ""Company,"" he remarks with his mouth full.
|
|
A few of the others glance down at you."
|
|
?CCL9: EQUAL? IMPSAY,2 \?CCL11
|
|
PRINT XA
|
|
PRINT STR?609
|
|
PRINTI " pitches "
|
|
ICALL2 THE-PRINT,COCO
|
|
PRINTI " across the table. ""Isn't this the feeb who "
|
|
FSET? BOTTLE,SEEN \?CCL14
|
|
PRINTI "opened that mailbox"
|
|
JUMP ?CND12
|
|
?CCL14: GETB LAST-BAD,0
|
|
ZERO? STACK /?CCL16
|
|
PRINTI "used the word '"
|
|
ICALL2 PRINT-TABLE,LAST-BAD
|
|
PRINTC 39
|
|
JUMP ?CND12
|
|
?CCL16: PRINTI "bought that stupid onion"
|
|
?CND12: PRINTI " a few moves ago?"" he mutters, apparently referring to you"
|
|
FSET? IMPS,MUNGED \?CND17
|
|
PRINTR ". ""Gimme another thunderbolt."""
|
|
?CND17: PRINT PTAB
|
|
PRINTI """That's "
|
|
FSET? PLAYER,FEMALE \?CCL21
|
|
PRINTB W?HER
|
|
JUMP ?CND19
|
|
?CCL21: PRINTB W?HIM
|
|
?CND19: PRINTR ","" agrees one of the others."
|
|
?CCL11: EQUAL? IMPSAY,1 \FALSE
|
|
PRINTI "A "
|
|
PRINT STR?607
|
|
PRINTI " catches "
|
|
ICALL2 THE-PRINT,COCO
|
|
PRINTR " and glares down at you with silent contempt."
|
|
|
|
|
|
.FUNCT I-IMPS-TAKE,X
|
|
EQUAL? HERE,APLANE \FALSE
|
|
EQUAL? ABOVE,OPLAIN \FALSE
|
|
FSET IMPS,SEEN
|
|
SET 'P-THEM-OBJECT,IMPS
|
|
PRINT TAB
|
|
SET 'P-IT-OBJECT,COCO
|
|
DLESS? 'IMPSAY,1 \?CCL7
|
|
PRINTI "The loud-mouthed Implementor growls something obscene, shoves you out of the way and reaches down to retrieve "
|
|
ICALL2 THE-PRINT,COCO
|
|
PRINT PTAB
|
|
ICALL2 URGRUE-GETS-COCO,TRUE-VALUE
|
|
RTRUE
|
|
?CCL7: EQUAL? IMPSAY,1 \?CCL9
|
|
PRINTI """Pick up that "
|
|
PRINTD COCO
|
|
PRINTI ","" growls the Implementor, ""or I'll "
|
|
GET STATS,INTELLIGENCE
|
|
LESS? STACK,READING-IQ /?CCL12
|
|
ICALL2 ITALICIZE,STR?541
|
|
JUMP ?CND10
|
|
?CCL12: ZERO? VT220 \?CCL14
|
|
PRINTI "(something unintelligible)"
|
|
JUMP ?CND10
|
|
?CCL14: FONT F-NEWFONT >X
|
|
PRINTB W?REMOVE
|
|
FONT F-DEFAULT >X
|
|
?CND10: PRINTI " you."""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTR "The other Implementors are enjoying this exchange."
|
|
?CCL9: EQUAL? IMPSAY,2 \FALSE
|
|
PRINTI "The Implementor who ran into you rises to his feet, livid with rage. ""Pick up that "
|
|
PRINTD COCO
|
|
PRINTR ","" he demands."
|
|
|
|
|
|
.FUNCT I-IMPQUEST
|
|
EQUAL? HERE,APLANE \FALSE
|
|
EQUAL? ABOVE,OPLAIN \FALSE
|
|
DLESS? 'IMPSAY,1 \?CCL7
|
|
SET 'IMPSAY,3
|
|
ICALL2 DEQUEUE,I-IMPQUEST
|
|
ICALL2 QUEUE,I-IMPGIVE
|
|
MOVE GOBLET,IMPS
|
|
SET 'P-IT-OBJECT,GOBLET
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
FSET IMPS,SEEN
|
|
PRINTI " A "
|
|
PRINT STR?610
|
|
PRINTR " empties his goblet of nectar with a gulp. ""Here,"" he says, holding it out for you. ""Carry this. It'll keep the thunderbolts off your back."""
|
|
?CCL7: EQUAL? IMPSAY,1 \?CCL9
|
|
FSET IMPS,SEEN
|
|
PRINTI " ""So,"" sighs another Implementor, toying with his sunglasses. ""The Coconut is gone. Stolen. Any volunteers to get it back?""
|
|
One by one, the Implementors turn to look at you.
|
|
""I'd say it's unanimous,"" smiles the "
|
|
PRINT STR?607
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL9: EQUAL? IMPSAY,2 \FALSE
|
|
FSET IMPS,SEEN
|
|
PRINTI " ""This is awkward,"" remarks a loudmouthed Implementor. ""No telling what the ur-grue might do with the Coconut. He could crumble the foundations of reality. Plunge the world into a thousand years of darkness. We might even have to buy our own lunch!"" The other Implementors gasp. ""And it's all "
|
|
HLIGHT H-ITALIC
|
|
FSET? PLAYER,FEMALE \?CCL14
|
|
PRINTI "her"
|
|
JUMP ?CND12
|
|
?CCL14: PRINTI "his"
|
|
?CND12: HLIGHT H-NORMAL
|
|
PRINTR " fault,"" he adds, pointing at you with a drumstick."
|
|
|
|
|
|
.FUNCT I-IMPGIVE
|
|
EQUAL? HERE,APLANE \FALSE
|
|
EQUAL? ABOVE,OPLAIN \FALSE
|
|
FSET IMPS,SEEN
|
|
SET 'P-IT-OBJECT,GOBLET
|
|
PRINT TAB
|
|
DLESS? 'IMPSAY,1 \?CCL7
|
|
MOVE GOBLET,ON-PIKE
|
|
FSET GOBLET,NODESC
|
|
FSET GOBLET,TOUCHED
|
|
PRINTI """I don't think "
|
|
FSET? PLAYER,FEMALE \?CND8
|
|
PRINTC 115
|
|
?CND8: PRINTI "he's going to accept "
|
|
ICALL2 THE-PRINT,GOBLET
|
|
PRINTI ","" sighs the "
|
|
PRINT STR?610
|
|
PRINT PTAB
|
|
PRINTI """Of course "
|
|
FSET? PLAYER,FEMALE \?CND10
|
|
PRINTC 115
|
|
?CND10: PRINTI "he will,"" smiles the "
|
|
PRINT STR?609
|
|
PRINTI ", forcing it into your hands. ""See?"""
|
|
CRLF
|
|
ICALL1 ATRII-KICK
|
|
RTRUE
|
|
?CCL7: EQUAL? IMPSAY,1 \?CCL13
|
|
PRINTI """I really must insist that you take this goblet,"" repeats the "
|
|
PRINT STR?610
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL13: EQUAL? IMPSAY,2 \FALSE
|
|
PRINTI """Here. Take this,"" urges the "
|
|
PRINT STR?610
|
|
PRINTI ", holding out the "
|
|
PRINT STR?611
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-BFLY,FREE,V,L,LEN
|
|
FSET? BFLY,LIVING \FALSE
|
|
LOC BFLY >L
|
|
ZERO? L /?CND3
|
|
CALL2 VISIBLE?,BFLY >V
|
|
IN? L,ROOMS /?CND3
|
|
EQUAL? L,ARCH \?CCL7
|
|
EQUAL? ATIME,PRESENT \?CND3
|
|
?CCL7: FSET? L,SURFACE /?CCL10
|
|
FSET? L,VEHICLE /?CCL10
|
|
FSET? L,LIVING /?CCL10
|
|
FSET? L,CONTAINER \?CND3
|
|
FSET? L,OPENED \?CND3
|
|
?CCL10: INC 'FREE
|
|
?CND3: EQUAL? L,GOBLET \?CCL19
|
|
ZERO? V /FALSE
|
|
FSET? BFLY,SEEN \?CCL24
|
|
FCLEAR BFLY,SEEN
|
|
RFALSE
|
|
?CCL24: RANDOM 100
|
|
LESS? 75,STACK \FALSE
|
|
FSET BFLY,SEEN
|
|
FSET BFLY,IDENTIFIED
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
CALL2 PICK-NEXT,BFLY-EATINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL19: ZERO? V /?CND17
|
|
FSET? BFLY,SEEN \?CCL29
|
|
FCLEAR BFLY,SEEN
|
|
RFALSE
|
|
?CCL29: RANDOM 100
|
|
LESS? 75,STACK \FALSE
|
|
FSET BFLY,SEEN
|
|
FSET BFLY,IDENTIFIED
|
|
PRINT TAB
|
|
EQUAL? L,HERE /?CND31
|
|
ZERO? FREE /?CND31
|
|
MOVE BFLY,HERE
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
PRINTI " flutters"
|
|
ICALL2 OUT-OF-LOC,L
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND31: CALL2 VISIBLE?,GOBLET
|
|
ZERO? STACK /?CND34
|
|
LOC GOBLET >L
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
LOC PLAYER
|
|
EQUAL? L,PLAYER,HERE,STACK /?CCL37
|
|
FSET? L,SURFACE \?CND36
|
|
?CCL37: MOVE BFLY,GOBLET
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
PRINTI " alights on the rim of "
|
|
ICALL2 THE-PRINT,GOBLET
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND36: CALL2 PICK-NEXT,BFLY-HOVERS
|
|
PRINT STACK
|
|
ICALL2 THE-PRINT,L
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND34: LOC ARCH
|
|
EQUAL? HERE,STACK /?CND40
|
|
RANDOM 100
|
|
LESS? 66,STACK /?CND40
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
CALL2 PICK-NEXT,BFLY-DOINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND40: CALL2 NEXT-BFLY-ROOM?,HERE
|
|
RSTACK
|
|
?CND17: ZERO? L /FALSE
|
|
IN? L,ROOMS /?CCL47
|
|
ZERO? FREE /FALSE
|
|
LOC L
|
|
MOVE BFLY,STACK
|
|
RFALSE
|
|
?CCL47: RANDOM 100
|
|
LESS? 66,STACK \FALSE
|
|
CALL2 NEXT-BFLY-ROOM?,L
|
|
RSTACK
|
|
|
|
|
|
.FUNCT NEXT-BFLY-ROOM?,L,DIR,CNT,TBL,TYPE,X,RM
|
|
IN? L,ROOMS \FALSE
|
|
SET 'CNT,1
|
|
SET 'DIR,I-NORTH
|
|
?PRG3: GETB PDIR-LIST,DIR
|
|
GETP L,STACK >TBL
|
|
ZERO? TBL /?CND5
|
|
GET TBL,XTYPE >X
|
|
BAND X,65280 >TYPE
|
|
EQUAL? TYPE,CONNECT,SCONNECT,X-EXIT /?CCL8
|
|
EQUAL? TYPE,DCONNECT \?PRD11
|
|
GET TBL,XDATA
|
|
FSET? STACK,OPENED /?CCL8
|
|
?PRD11: EQUAL? TYPE,FCONNECT \?CND5
|
|
BAND X,127
|
|
ZERO? STACK /?CND5
|
|
?CCL8: GET TBL,XROOM >RM
|
|
EQUAL? RM,L,ON-BRIDGE,IN-FROON /?CND5
|
|
LOC ARCH
|
|
EQUAL? RM,APLANE,IN-SPLENDOR,STACK /?CND5
|
|
CALL2 PLAIN-ROOM?,RM
|
|
ZERO? STACK \?CCL19
|
|
FSET? BFLY,IDENTIFIED \?CND5
|
|
?CCL19: FSET? RM,INDOORS \?CCL22
|
|
FSET? L,INDOORS \?CND5
|
|
?CCL22: EQUAL? RM,HERE \?CCL26
|
|
CALL2 WEARING-MAGIC?,CLOAK
|
|
ZERO? STACK \?CCL26
|
|
SET 'CNT,2
|
|
PUT GOOD-DIRS,2,DIR
|
|
JUMP ?REP4
|
|
?CCL26: INC 'CNT
|
|
PUT GOOD-DIRS,CNT,DIR
|
|
?CND5: IGRTR? 'DIR,I-NW \?PRG3
|
|
?REP4: EQUAL? CNT,1 /FALSE
|
|
EQUAL? CNT,2 \?CCL35
|
|
GET GOOD-DIRS,2 >DIR
|
|
JUMP ?CND31
|
|
?CCL35: PUT GOOD-DIRS,0,CNT
|
|
PUT GOOD-DIRS,1,0
|
|
CALL2 PICK-ONE,GOOD-DIRS >DIR
|
|
?CND31: GETB PDIR-LIST,DIR
|
|
GETP L,STACK
|
|
GET STACK,XROOM >RM
|
|
EQUAL? L,HERE \?CCL38
|
|
MOVE BFLY,RM
|
|
ICALL2 BFLY-FLIES,DIR
|
|
RTRUE
|
|
?CCL38: EQUAL? RM,HERE \FALSE
|
|
ICALL2 BFLY-ARRIVES,DIR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT BFLY-FLIES,DIR
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
PRINTI " flutters away"
|
|
ASSIGNED? 'DIR \?CND1
|
|
PRINTI " to the "
|
|
GET DIR-NAMES,DIR
|
|
PRINTB STACK
|
|
?CND1: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT BFLY-ARRIVES,DIR
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,BFLY
|
|
MOVE BFLY,HERE
|
|
FSET BFLY,SEEN
|
|
FSET BFLY,IDENTIFIED
|
|
PRINT TAB
|
|
FSET? BFLY,TOUCHED \?CCL3
|
|
PRINT XTHE
|
|
JUMP ?CND1
|
|
?CCL3: FSET BFLY,TOUCHED
|
|
PRINT XA
|
|
?CND1: ICALL2 DPRINT,BFLY
|
|
PRINTI " flutters into view"
|
|
ASSIGNED? 'DIR \?CND4
|
|
ADD DIR,4 >DIR
|
|
GRTR? DIR,I-NW \?CND6
|
|
SUB DIR,8 >DIR
|
|
?CND6: PRINTI " from the "
|
|
GET DIR-NAMES,DIR
|
|
PRINTB STACK
|
|
?CND4: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-PILLAR,L
|
|
LOC BFLY >L
|
|
ZERO? L /FALSE
|
|
FSET? BFLY,LIVING \FALSE
|
|
CALL2 VISIBLE?,BFLY
|
|
ZERO? STACK /?CCL7
|
|
FSET? BFLY,SEEN \?CCL10
|
|
FCLEAR BFLY,SEEN
|
|
RFALSE
|
|
?CCL10: IN? L,ROOMS \?CCL12
|
|
ICALL2 VANISH,BFLY
|
|
ICALL2 DEQUEUE,I-PILLAR
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
PRINTR " seems to have crawled out of sight."
|
|
?CCL12: RANDOM 100
|
|
LESS? 90,STACK \FALSE
|
|
FSET BFLY,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,BFLY
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL16
|
|
CALL2 PICK-NEXT,PILLAR-DOINGS
|
|
PRINT STACK
|
|
JUMP ?CND14
|
|
?CCL16: CALL2 PICK-NEXT,PILLAR-MOVES
|
|
PRINT STACK
|
|
EQUAL? L,PLAYER \?CCL19
|
|
SET 'L,HANDS
|
|
JUMP ?CND17
|
|
?CCL19: EQUAL? L,HERE \?CND17
|
|
FSET? HERE,INDOORS \?CCL22
|
|
SET 'L,FLOOR
|
|
JUMP ?CND17
|
|
?CCL22: SET 'L,GROUND
|
|
?CND17: ICALL2 THE-PRINT,L
|
|
?CND14: PRINT PERIOD
|
|
RTRUE
|
|
?CCL7: IN? L,ROOMS \FALSE
|
|
RANDOM 100
|
|
LESS? 33,STACK /FALSE
|
|
REMOVE BFLY
|
|
ICALL2 DEQUEUE,I-PILLAR
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-CLERIC,X
|
|
EQUAL? HERE,IN-CHAPEL \FALSE
|
|
FSET? CLERIC,SEEN \?CND1
|
|
FCLEAR CLERIC,SEEN
|
|
RFALSE
|
|
?CND1: PRINT TAB
|
|
IGRTR? 'CLERIC-SCRIPT,INIT-CLERIC-SCRIPT \?CCL7
|
|
SET 'CLERIC-SCRIPT,0
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTI " lifts his eyes as you walk in"
|
|
FSET? CONGREG,SEEN /?CND8
|
|
FSET CONGREG,SEEN
|
|
PRINTI ". ""Art thou the Savior?"" he cries, and the entire "
|
|
PRINTD CONGREG
|
|
PRINTI " turns to stare at you"
|
|
PRINT PTAB
|
|
PRINTI """Naw,"" sneers an unseen voice. ""Just some "
|
|
SET 'X,W?GUY
|
|
FSET? PLAYER,FEMALE \?CND10
|
|
SET 'X,W?DAME
|
|
?CND10: PRINTB X
|
|
CALL2 SEE-ANYTHING-IN?,PLAYER
|
|
ZERO? STACK /?CND12
|
|
PRINT WITH
|
|
FIRST? PLAYER /?BOGUS14
|
|
?BOGUS14: ICALL2 PRINTA,STACK
|
|
?CND12: PRINT PERQ
|
|
PRINT TAB
|
|
PRINTI """Oh,"" mumbles "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINTI " with a sigh of resignation. ""Have a seat, good "
|
|
SET 'X,W?SIR
|
|
FSET? PLAYER,FEMALE \?CND15
|
|
SET 'X,W?MISS
|
|
?CND15: PRINTB X
|
|
PRINTR ", and join us in our hour of need."""
|
|
?CND8: PRINTR ", and bows his head in sorrow."
|
|
?CCL7: EQUAL? CLERIC-SCRIPT,1 \?CCL18
|
|
PRINTC QUOTATION
|
|
CALL2 PICK-NEXT,CLERIC-WOES
|
|
PRINT STACK
|
|
PRINTC EXCLAM
|
|
ICALL1 CLERIC-WHINES
|
|
PRINTI "Behold! The wrath of the Trees is almost upon us. When the Glyph of Warding is melted, the village will be lost!"""
|
|
CRLF
|
|
ICALL1 CROWD-AGREES
|
|
RTRUE
|
|
?CCL18: EQUAL? CLERIC-SCRIPT,2 \?CCL20
|
|
PRINTI """Who can stop the marching Trees?"
|
|
ICALL1 CLERIC-WHINES
|
|
PRINTI "Orkan's Glyphs are all that keep the monsters at bay. But Orkan answers not our summons; only one Glyph remains, and that is writ in snow!"""
|
|
CRLF
|
|
ICALL1 CROWD-AGREES
|
|
RTRUE
|
|
?CCL20: EQUAL? CLERIC-SCRIPT,3 \?CCL22
|
|
PRINTI """The southern mountains are their nest,"
|
|
ICALL1 CLERIC-WHINES
|
|
PRINTR "They march relentlessly, choking the valley with their foul gifts and blasphemous songs. They know the wizard's Glyph is melting, and with it fades our only hope!"""
|
|
?CCL22: EQUAL? CLERIC-SCRIPT,INIT-CLERIC-SCRIPT \FALSE
|
|
SET 'CLERIC-SCRIPT,0
|
|
PRINTI """Where is the Savior of whom our legends speak?"
|
|
ICALL1 CLERIC-WHINES
|
|
PRINTI "Anything "
|
|
FSET? PLAYER,FEMALE \?CND25
|
|
PRINTC 115
|
|
?CND25: PRINTI "he asks will be "
|
|
FSET? PLAYER,FEMALE \?CCL29
|
|
PRINTI "her"
|
|
JUMP ?CND27
|
|
?CCL29: PRINTI "his"
|
|
?CND27: PRINTI " reward, if only "
|
|
FSET? PLAYER,FEMALE \?CND30
|
|
PRINTC 115
|
|
?CND30: PRINTI "he fulfills the ancient prophecy, and drives the plague of Tree-daemons from our doorstep!"""
|
|
CRLF
|
|
ICALL1 CROWD-AGREES
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CLERIC-WHINES,X
|
|
ICALL2 WHIMPERS,CLERIC
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND1
|
|
PRINTI ", "
|
|
RANDOM 100 >X
|
|
LESS? X,33 \?CCL5
|
|
PRINTI "beating his breast"
|
|
JUMP ?CND3
|
|
?CCL5: LESS? X,67 \?CCL7
|
|
PRINTI "wringing his hands"
|
|
JUMP ?CND3
|
|
?CCL7: PRINTI "covering his face"
|
|
?CND3: RANDOM 100
|
|
LESS? 50,STACK /?CND1
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL12
|
|
PRINTI " in supplication"
|
|
JUMP ?CND1
|
|
?CCL12: PRINTI " hopelessly"
|
|
?CND1: PRINTI ". """
|
|
RFALSE
|
|
|
|
|
|
.FUNCT CROWD-AGREES
|
|
RANDOM 100
|
|
LESS? 33,STACK /FALSE
|
|
PRINT TAB
|
|
PRINTC QUOTATION
|
|
CALL2 PICK-NEXT,CLERIC-WOES
|
|
PRINT STACK
|
|
PRINTC EXCLAM
|
|
ICALL2 WHIMPERS,CONGREG
|
|
PRINT PERIOD
|
|
RFALSE
|
|
|
|
|
|
.FUNCT WHIMPERS,OBJ,X
|
|
PRINTI """ "
|
|
RANDOM 100 >X
|
|
LESS? X,33 \?CCL3
|
|
PRINTI "mourn"
|
|
JUMP ?CND1
|
|
?CCL3: LESS? X,67 \?CCL5
|
|
PRINTI "whine"
|
|
JUMP ?CND1
|
|
?CCL5: PRINTI "whimper"
|
|
?CND1: PRINTI "s "
|
|
ICALL2 THE-PRINT,OBJ
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-THRIFF-WIN
|
|
CALL2 VISIBLE?,CLERIC
|
|
ZERO? STACK /FALSE
|
|
FSET? CLERIC,SEEN \?CND1
|
|
FCLEAR CLERIC,SEEN
|
|
RFALSE
|
|
?CND1: INC 'CLERIC-SCRIPT
|
|
PRINT TAB
|
|
EQUAL? CLERIC-SCRIPT,1 \?CCL7
|
|
PRINTI """Congratulations, honored "
|
|
ICALL1 SAY-SORC
|
|
PRINTI ","" booms "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINTR " over the crowd's cheers. ""Truly, thou art the Savior foretold in our eldest legends. Would that Orkan were here to witness this day."""
|
|
?CCL7: EQUAL? CLERIC-SCRIPT,2 \?CCL9
|
|
PRINTI """What reward wouldst thou claim of us?"" asks "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINTI ", carefully holding "
|
|
PRINT STR?612
|
|
PRINTR "Ask for anything, and it shall be yours!"""
|
|
?CCL9: EQUAL? CLERIC-SCRIPT,3 \?CCL11
|
|
PRINTI """Anything we possess is yours for the asking,"" repeats "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL11: EQUAL? CLERIC-SCRIPT,4 \?CND5
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTI " adjusts "
|
|
PRINT STR?612
|
|
PRINTI "Perchance we have nothing to tempt such a mighty "
|
|
ICALL1 SAY-SORC
|
|
PRINTR ","" he remarks hopefully."
|
|
?CND5: ICALL1 EXIT-CLERIC
|
|
ICALL2 CTHE-PRINT,CONGREG
|
|
PRINTI " is beginning to wander away"
|
|
PRINT PTAB
|
|
PRINTI """Your reticence betrays your humility, honored one,"" says the Cardinal, bowing his head. ""No doubt you have forsworn earthly gifts in lieu of some greater reward in the afterlife. In that case, farewell!""
|
|
Clutching "
|
|
ICALL2 THE-PRINT,RELIQUARY
|
|
PRINTI ", "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINT STR?501
|
|
PRINTR "crowd. In moments, the place is deserted."
|
|
|
|
|
|
.FUNCT EXIT-CLERIC
|
|
ICALL2 DEQUEUE,I-THRIFF-WIN
|
|
REMOVE CLERIC
|
|
SET 'P-HIM-OBJECT,NOT-HERE-OBJECT
|
|
REMOVE CONGREG
|
|
SET 'P-THEM-OBJECT,NOT-HERE-OBJECT
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-TRUFFLE,V
|
|
LOC TRUFFLE
|
|
ZERO? STACK \?CCL3
|
|
SET 'TRUFFLE-TIMER,0
|
|
ICALL2 DEQUEUE,I-TRUFFLE
|
|
RFALSE
|
|
?CCL3: EQUAL? HERE,APLANE,IN-SPLENDOR /FALSE
|
|
CALL2 VISIBLE?,TRUFFLE >V
|
|
EQUAL? HERE,APLANE,IN-SPLENDOR /FALSE
|
|
DLESS? 'TRUFFLE-TIMER,1 \?CCL9
|
|
SET 'TRUFFLE-TIMER,0
|
|
ICALL2 DEQUEUE,I-TRUFFLE
|
|
ICALL2 VANISH,TRUFFLE
|
|
ZERO? V /FALSE
|
|
PRINT TAB
|
|
PRINTI "All that's left of "
|
|
ICALL2 THE-PRINT,TRUFFLE
|
|
PRINTR " is a yummy memory."
|
|
?CCL9: ZERO? V /FALSE
|
|
EQUAL? TRUFFLE-TIMER,10 \?CCL15
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,TRUFFLE
|
|
PRINTI " looks terribly soft"
|
|
PRINT STR?587
|
|
RTRUE
|
|
?CCL15: EQUAL? TRUFFLE-TIMER,30 \FALSE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,TRUFFLE
|
|
PRINTR " looks as if it's beginning to soften."
|
|
|
|
|
|
.FUNCT I-QUEEN,X
|
|
EQUAL? HERE,IN-GARDEN \FALSE
|
|
INC 'PTIMER
|
|
EQUAL? PTIMER,1 /FALSE
|
|
EQUAL? PTIMER,2 \?CCL7
|
|
PRINT TAB
|
|
PRINTR "Voices can be heard somewhere in the distance."
|
|
?CCL7: EQUAL? PTIMER,3 \?CCL9
|
|
PRINT TAB
|
|
PRINTR "One of the unseen voices laughs harshly."
|
|
?CCL9: EQUAL? PTIMER,4 \?CCL11
|
|
FCLEAR QUEEN,NODESC
|
|
PRINT TAB
|
|
PRINT YOU-HEAR
|
|
PRINTR "a chorus of unpleasant giggles. ""I'll be in my garden,"" calls one of the voices."
|
|
?CCL11: EQUAL? PTIMER,5 \?CCL13
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "A whirlpool of twinkling light forms in "
|
|
ICALL2 THE-PRINT,GARDEN
|
|
PRINTI ". Something is beginning to materialize!"
|
|
CRLF
|
|
IN? DACT,HERE \?CND14
|
|
FSET? DACT,LIVING \?CND14
|
|
FSET? DACT,SLEEPING /?CND14
|
|
FSET DACT,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,DACT
|
|
PRINTI " beats its wings restlessly."
|
|
CRLF
|
|
?CND14: CALL2 VISIBLE?,MINX
|
|
ZERO? STACK /TRUE
|
|
FSET? MINX,LIVING \TRUE
|
|
FSET? MINX,SLEEPING /TRUE
|
|
FSET MINX,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " whimpers fearfully as "
|
|
ICALL2 THE-PRINT,GARDEN
|
|
PRINTI " brightens"
|
|
IN? MINX,BUSH /?CND24
|
|
LOC MINX >X
|
|
MOVE MINX,BUSH
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
PRINTI ". Before you can stop her, she "
|
|
EQUAL? X,IN-GARDEN /?CND26
|
|
PRINTI "leaps away from "
|
|
EQUAL? X,PLAYER \?CCL30
|
|
PRINTI "your grasp"
|
|
JUMP ?CND28
|
|
?CCL30: ICALL2 THE-PRINT,X
|
|
?CND28: PRINTI ", "
|
|
?CND26: PRINTI "streaks across the lawn and disappears behind "
|
|
ICALL2 THE-PRINT,BUSH
|
|
?CND24: PRINT PERIOD
|
|
RTRUE
|
|
?CCL13: EQUAL? PTIMER,6 \?CCL32
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
MOVE QUEEN,HERE
|
|
ICALL2 SEE-CHARACTER,QUEEN
|
|
PRINT TAB
|
|
PRINTI "The twinkling whirl resolves into a furry creature. Her face is turned away at the moment, but there's a flat tail sticking out from under her long, red gown."
|
|
CRLF
|
|
ICALL2 TOPPLED?,QUEEN
|
|
RTRUE
|
|
?CCL32: EQUAL? PTIMER,7 \?CCL34
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PUTP QUEEN,P?SDESC,0
|
|
PRINT TAB
|
|
PRINTI "The furry creature turns around, revealing her dark, beady eyes and fleshy bill. She's a platypus!"
|
|
CRLF
|
|
IN? DACT,HERE /?CCL36
|
|
IN? PLAYER,BUSH /TRUE
|
|
?CCL36: ICALL1 QUEEN-SEES-YOU
|
|
RTRUE
|
|
?CCL34: EQUAL? PTIMER,8 \?CCL40
|
|
MOVE JAR,QUEEN
|
|
FSET BROG,CONTAINER
|
|
FSET BROG,OPENABLE
|
|
FSET BROG,OPENED
|
|
ICALL REPLACE-SYN?,BROG,W?ZZZP,W?COMPARTMENT
|
|
ICALL REPLACE-ADJ?,BROG,W?ZZZP,W?SECRET
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,QUEEN
|
|
PRINTI " steps over to "
|
|
ICALL2 THE-PRINT,BROG
|
|
PRINTI ", glancing around to be sure she is alone. Then she opens a secret compartment and pulls out "
|
|
ICALL2 PRINTA,JAR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL40: EQUAL? PTIMER,9 \?CCL42
|
|
ICALL2 CREATE-MIRROR?,MIRROR0
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,QUEEN
|
|
PRINTR " opens the jar, takes out a circlet and blows a silver bubble. You watch as the bubble flattens into a round mirror, rotating slowly on its edge."
|
|
?CCL42: EQUAL? PTIMER,10 \?CCL44
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,QUEEN
|
|
PRINTR " stops the spinning mirror and turns it until it faces her. Gazing into it she whispers,
|
|
|
|
""Mirror, mirror in the air,
|
|
Who in Quendor is most fair?"""
|
|
?CCL44: EQUAL? PTIMER,11 \?CCL46
|
|
PRINTI " The floating mirror shimmers, and a hollow voice says,
|
|
|
|
""Your Highness once was fair, 'tis true.
|
|
But Morning-Star is "
|
|
ICALL2 ITALICIZE,STR?613
|
|
PRINTR "!"""
|
|
?CCL46: EQUAL? PTIMER,12 \FALSE
|
|
FCLEAR BROG,OPENED
|
|
MOVE JAR,BROG
|
|
ICALL2 DESTROY-MIRROR,MIRROR0
|
|
ICALL2 DEQUEUE,I-MIRRORS
|
|
REMOVE QUEEN
|
|
ICALL2 DEQUEUE,I-QUEEN
|
|
SET 'PTIMER,0
|
|
SET 'P-HER-OBJECT,NOT-HERE-OBJECT
|
|
PRINTI " ""Liar!"" cries "
|
|
ICALL2 THE-PRINT,QUEEN
|
|
PRINTI ", bursting the mirror with an angry swipe. She stows "
|
|
ICALL2 THE-PRINT,JAR
|
|
PRINTI " back in "
|
|
ICALL2 THE-PRINT,BROG
|
|
PRINTR ", blows a silver whistle and dissolves in a whirlpool of color."
|
|
|
|
|
|
.FUNCT I-DUST,INDENT,V
|
|
CALL2 VISIBLE?,DUST >V
|
|
ASSIGNED? 'INDENT /?CND1
|
|
FSET? DUST,SEEN \?CCL4
|
|
FCLEAR DUST,SEEN
|
|
RFALSE
|
|
?CCL4: PRINT TAB
|
|
?CND1: FSET DUST,SEEN
|
|
EQUAL? BUNNIES,1 \?CCL7
|
|
SET 'P-THEM-OBJECT,DUST
|
|
PUTP DUST,P?SDESC,0
|
|
FSET DUST,PLURAL
|
|
ZERO? V /?CND5
|
|
PRINTI "With an ominous "
|
|
HLIGHT H-ITALIC
|
|
PRINTI "poof"
|
|
HLIGHT H-NORMAL
|
|
PRINTI ", the dust bunny divides itself in two."
|
|
CRLF
|
|
JUMP ?CND5
|
|
?CCL7: ZERO? V /?CND5
|
|
HLIGHT H-ITALIC
|
|
PRINTI "Poof"
|
|
HLIGHT H-NORMAL
|
|
PRINTI ". "
|
|
ICALL2 CTHE-PRINT,DUST
|
|
CALL2 PICK-NEXT,BUNNY-SPLITS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
?CND5: ICALL1 MORE-BUNNIES
|
|
RETURN V
|
|
|
|
|
|
.FUNCT MORE-BUNNIES,X
|
|
GRTR? BUNNIES,BMAX /TRUE
|
|
EQUAL? BUNNIES,BMAX \?CCL5
|
|
INC 'BUNNIES
|
|
JUMP ?CND1
|
|
?CCL5: SET 'X,BUNNIES
|
|
ADD OBUNNIES,BUNNIES >BUNNIES
|
|
SET 'OBUNNIES,X
|
|
?CND1: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-MARE-SEES
|
|
ICALL2 DEQUEUE,I-MARE-SEES
|
|
EQUAL? HERE,IN-SPLENDOR \FALSE
|
|
PRINT TAB
|
|
ICALL2 UNICORNS-FLEE,STR?614
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-ARREST,INDENT,RM,OBJ,NXT
|
|
ICALL2 DEQUEUE,I-ARREST
|
|
EQUAL? HERE,IN-SPLENDOR \FALSE
|
|
ASSIGNED? 'INDENT /?CCL5
|
|
PRINT TAB
|
|
PRINT XTHE
|
|
JUMP ?CND3
|
|
?CCL5: PRINTI "As you step across the glade, the "
|
|
?CND3: PRINTI "stillness is broken by the rumble of approaching hooves. Before you can think or move, you find yourself enclosed by a dozen sharp horns, each backed by a unicorn in full military regalia.
|
|
A magnificent stallion regards you with calm authority. ""You"
|
|
FSET? HERD,SEEN \?CCL8
|
|
PRINTI "r fate is sealed"
|
|
JUMP ?CND6
|
|
?CCL8: PRINTI " will find no welcome here"
|
|
?CND6: PRINTI ", earth-dweller,"" whispers a stern voice in your mind. """
|
|
FSET? HERD,SEEN \?CND9
|
|
PRINTI "The injustice that drove us to this Plane is now yours. Forever."""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "A painful metal bit is forced into your mouth, and a wagonload of overweight, aristocratic unicorns is attached. The rest of your life is spent hauling this laughing burden in a small circle, with infrequent stops for dirty water and oats"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
?CND9: FSET HERD,SEEN
|
|
PRINTI "Our children must never know the pain we suffered at the hands of Men. Return to your people now, and describe the fate awaiting any who dares to violate our solitude again."""
|
|
CRLF
|
|
PRINT TAB
|
|
PRINTI "A lifetime of humiliating drudgery passes before your eyes. You cry out with pain and heartache as you haul wagons full of overweight aristocrats, standing silent and powerless as cruel taskmasters whip you over and over again..."
|
|
ICALL1 CARRIAGE-RETURNS
|
|
ICALL1 SAFE-VEHICLE-EXIT
|
|
CALL2 META-LOC,CHEST >RM
|
|
FIRST? IN-SPLENDOR >OBJ \?CND11
|
|
?PRG13: NEXT? OBJ >NXT /?BOGUS15
|
|
?BOGUS15: EQUAL? OBJ,WINNER /?CND16
|
|
FSET? OBJ,TAKEABLE \?CND16
|
|
MOVE OBJ,RM
|
|
?CND16: SET 'OBJ,NXT
|
|
ZERO? OBJ \?PRG13
|
|
?CND11: SET 'P-WALK-DIR,FALSE-VALUE
|
|
ICALL2 GOTO,RM
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-STRANGLE,X
|
|
GET STATS,ENDURANCE >X
|
|
PRINT TAB
|
|
LESS? CHOKE,X \?CND1
|
|
CALL2 PICK-NEXT,STRANGLES
|
|
PRINT STACK
|
|
DIV X,CHOKE
|
|
LESS? STACK,2 \?CND3
|
|
PRINTI ". Your endurance won't last much longer"
|
|
?CND3: PRINTC 33
|
|
CRLF
|
|
SUB 0,CHOKE
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
?CND1: SUB 0,X
|
|
ICALL2 UPDATE-STAT,STACK
|
|
PRINTI "The choking fingers drain your endurance to its limit. As your consciousness sinks into oblivion, you feel "
|
|
ICALL2 THE-PRINT,SKELETON
|
|
PRINTI " draping "
|
|
PRINTB W?SOMETHING
|
|
PRINTI " around your neck"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOLUCK?,CNT,LEN,OBJ
|
|
GET LUCKY-OBJECTS,0 >LEN
|
|
?PRG1: GET LUCKY-OBJECTS,LEN >OBJ
|
|
IN? OBJ,PLAYER \?CND3
|
|
FSET? OBJ,NEUTRALIZED /?CND3
|
|
GETP OBJ,P?DNUM >CNT
|
|
DLESS? 'CNT,1 \?CND7
|
|
ICALL2 VANISH,OBJ
|
|
PRINT TAB
|
|
ICALL2 ITALICIZE,STR?615
|
|
PRINTI "! "
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
PRINTI " is consumed in a silent flash of green."
|
|
CRLF
|
|
RFALSE
|
|
?CND7: PUTP OBJ,P?DNUM,CNT
|
|
PRINT TAB
|
|
PRINT CYOUR
|
|
ICALL2 DPRINT,OBJ
|
|
PRINTI " flickers green"
|
|
EQUAL? CNT,1 \?CND9
|
|
PRINTI " again, less brightly than before"
|
|
?CND9: PRINT PERIOD
|
|
RFALSE
|
|
?CND3: DLESS? 'LEN,1 \?PRG1
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-GRUE,SEE,L,DIR,TBL,DEST,DAMAGE,X
|
|
ZERO? LIT? \FALSE
|
|
EQUAL? HERE,IN-LAIR /FALSE
|
|
CALL1 GRUE-ROOM?
|
|
ZERO? STACK /FALSE
|
|
CALL2 WEARING-MAGIC?,HELM >SEE
|
|
IN? GRUE,HERE \?CCL9
|
|
GETP GRUE,P?ENDURANCE
|
|
LESS? STACK,1 \?CND10
|
|
IGRTR? 'GRUE-KILLS,2 \?CND12
|
|
ICALL2 DEQUEUE,I-GRUE
|
|
?CND12: PRINT TAB
|
|
ZERO? SEE /?CCL16
|
|
ICALL2 CTHE-PRINT,GRUE
|
|
PRINTI " retreats"
|
|
JUMP ?CND14
|
|
?CCL16: PRINT YOU-HEAR
|
|
PRINTB W?SOMETHING
|
|
PRINTI " retreat"
|
|
?CND14: PRINTI " into the darkness."
|
|
CRLF
|
|
GETP GRUE,P?VALUE
|
|
ICALL UPDATE-STAT,STACK,EXPERIENCE,TRUE-VALUE
|
|
ICALL2 EXUENT-MONSTER,GRUE
|
|
GETP GRUE,P?EMAX
|
|
PUTP GRUE,P?ENDURANCE,STACK
|
|
RTRUE
|
|
?CND10: ICALL2 NEXT-ENDURANCE?,GRUE
|
|
PRINT TAB
|
|
ZERO? SEE /?CCL19
|
|
ICALL2 CTHE-PRINT,GRUE
|
|
JUMP ?CND17
|
|
?CCL19: PRINTI "Something"
|
|
?CND17: PRINTI " strikes out at you"
|
|
CALL2 MONSTER-STRIKES?,GRUE >DAMAGE
|
|
ZERO? DAMAGE \?CCL22
|
|
PRINTR ", but misses."
|
|
?CCL22: ZERO? STATIC \?CCL24
|
|
PRINTI ". Ouch!"
|
|
CRLF
|
|
JUMP ?CND20
|
|
?CCL24: PRINT PERIOD
|
|
?CND20: CALL MSPARK?,GRUE,DAMAGE
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
?CCL9: FSET? GRUE,SURPRISED \?CND7
|
|
FCLEAR GRUE,SURPRISED
|
|
RFALSE
|
|
?CND7: MOVE GRUE,HERE
|
|
ICALL2 SEE-MONSTER,GRUE
|
|
ZERO? SEE /?CND26
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
?CND26: PRINT TAB
|
|
ZERO? SEE /?CCL30
|
|
PRINTI "A presence"
|
|
JUMP ?CND28
|
|
?CCL30: PRINTI "Something"
|
|
?CND28: PRINTR " lurks into the passage."
|
|
|
|
|
|
.FUNCT I-WIGHT,DAMAGE
|
|
EQUAL? HERE,ON-TRAIL \FALSE
|
|
GETP WIGHT,P?ENDURANCE
|
|
LESS? STACK,1 \?CCL6
|
|
PRINT TAB
|
|
FSET? WIGHT,SLEEPING /?CND7
|
|
PRINTI "Battered and confused, "
|
|
ICALL2 THE-PRINT,WIGHT
|
|
PRINTI " backs over the edge of the cliff, shrieks and tumbles out of sight."
|
|
CRLF
|
|
?CND7: ICALL2 KILL-MONSTER,WIGHT
|
|
MOVE DIAMOND,ON-TRAIL
|
|
SET 'P-IT-OBJECT,DIAMOND
|
|
PRINT TAB
|
|
PRINTI "Something lands at your feet with a "
|
|
ICALL2 ITALICIZE,STR?616
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL6: FSET? WIGHT,SURPRISED \?CND4
|
|
ICALL2 SEE-MONSTER,WIGHT
|
|
FSET? WIGHT,SLEEPING /?CND4
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WIGHT
|
|
PRINTI " whirls to face you."
|
|
CRLF
|
|
ICALL2 TOPPLED?,WIGHT
|
|
RTRUE
|
|
?CND4: CALL2 STILL-SLEEPING?,WIGHT
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NEXT-ENDURANCE?,WIGHT
|
|
CALL2 MONSTER-STRIKES?,WIGHT >DAMAGE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,WIGHT
|
|
ZERO? DAMAGE /?CND14
|
|
PRINTI " claws at you viciously."
|
|
ZERO? STATIC \?CND16
|
|
PRINTI " Ouch!"
|
|
?CND16: CRLF
|
|
CALL MSPARK?,WIGHT,DAMAGE
|
|
ICALL2 UPDATE-STAT,STACK
|
|
RTRUE
|
|
?CND14: PRINTR " strikes out at you, but misses."
|
|
|
|
|
|
.FUNCT I-LAVA
|
|
DLESS? 'LAVA-TIMER,1 \?CCL3
|
|
EQUAL? HERE,FOREST-EDGE,ON-TRAIL,ON-PEAK /?CCL5
|
|
EQUAL? HERE,IN-CABIN \?CND4
|
|
?CCL5: ICALL1 CASCADE
|
|
RTRUE
|
|
?CND4: REMOVE PLUME
|
|
SET 'LAVA-TIMER,0
|
|
ICALL2 DEQUEUE,I-LAVA
|
|
MOVE MAGMA-GLOW,IN-THRIFF
|
|
SET 'MAGMA-TIMER,4
|
|
ICALL2 QUEUE,I-MAGMA
|
|
ICALL2 EMPTY-ROOM,FOREST-EDGE
|
|
PUTP FOREST-EDGE,P?SDESC,0
|
|
EQUAL? HERE,IN-THRIFF \FALSE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTR "A violent tremor wracks the earth and sends you sprawling. You bravely cover your eyes to await the tide of magma that will sweep you and Thriff into oblivion...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The silence gets the better of your curiosity."
|
|
?CCL3: EQUAL? LAVA-TIMER,1 \?CCL11
|
|
EQUAL? HERE,ON-TRAIL,ON-PEAK,IN-CABIN \?CND12
|
|
ICALL1 CASCADE
|
|
RTRUE
|
|
?CND12: REMOVE MAILBOX
|
|
PUTP ON-TRAIL,P?SOUTH,0
|
|
PUTP ON-TRAIL,P?IN,0
|
|
ICALL REPLACE-GLOBAL?,ON-TRAIL,CABIN,NULL
|
|
IN? WIGHT,ON-TRAIL \?CND14
|
|
REMOVE WIGHT
|
|
ICALL2 DEQUEUE,I-WIGHT
|
|
?CND14: ICALL2 EMPTY-ROOM,ON-TRAIL
|
|
EQUAL? HERE,FOREST-EDGE,IN-THRIFF \FALSE
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,GROUND
|
|
PRINTI " trembles with seismic distress"
|
|
EQUAL? HERE,IN-THRIFF \?CND18
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND18: PRINTR " as a deadly torrent of lava sweeps down the western slope, only seconds away!"
|
|
?CCL11: EQUAL? LAVA-TIMER,2 \FALSE
|
|
EQUAL? HERE,ON-PEAK \?CND22
|
|
ICALL1 CASCADE
|
|
RTRUE
|
|
?CND22: ICALL2 EMPTY-ROOM,ON-PEAK
|
|
EQUAL? HERE,ON-TRAIL,FOREST-EDGE,IN-THRIFF /?CND24
|
|
EQUAL? HERE,IN-CABIN \FALSE
|
|
?CND24: PRINT TAB
|
|
PRINTI "Powerful shock waves rock the mountainside"
|
|
EQUAL? HERE,IN-CABIN \?CCL30
|
|
PRINTR ", and the entire cabin shudders."
|
|
?CCL30: EQUAL? HERE,IN-THRIFF,FOREST-EDGE \?CND28
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND28: PRINTR " as a red-hot wall of liquid rock roars down the trail, only seconds behind you!"
|
|
|
|
|
|
.FUNCT CASCADE,STR
|
|
ASSIGNED? 'STR \?CCL3
|
|
PRINTI "As you "
|
|
PRINT STR
|
|
PRINTI " the lava, a cascade of it "
|
|
JUMP ?CND1
|
|
?CCL3: PRINT TAB
|
|
PRINTI "A cascade of lava "
|
|
?CND1: EQUAL? HERE,IN-CABIN \?CCL6
|
|
PRINTI "buries "
|
|
ICALL2 THE-PRINT,CABIN
|
|
JUMP ?CND4
|
|
?CCL6: EQUAL? HERE,ON-PEAK /?CND7
|
|
PRINTI "roars down the mountainside and "
|
|
?CND7: PRINTI "knocks you off your feet, burying you"
|
|
?CND4: PRINTI " instantly under tons of molten rock"
|
|
CALL2 WEARING-MAGIC?,RING
|
|
ZERO? STACK /?CND9
|
|
PRINTI "! Your magic ring miraculously shields you from the volcanic heat, but not from the inconvenience of having nothing to breathe"
|
|
?CND9: ICALL1 JIGS-UP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT EMPTY-ROOM,RM,OBJ,NXT
|
|
FIRST? RM >OBJ \?CND1
|
|
?PRG3: NEXT? OBJ >NXT /?BOGUS5
|
|
?BOGUS5: FSET? OBJ,TAKEABLE \?CND6
|
|
REMOVE OBJ
|
|
?CND6: SET 'OBJ,NXT
|
|
ZERO? OBJ \?PRG3
|
|
?CND1: ICALL REPLACE-GLOBAL?,RM,SNOW,LAVA
|
|
ICALL REPLACE-GLOBAL?,RM,GLYPH,NULL
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-MAGMA,TBL,X
|
|
GETPT MAGMA-GLOW,P?ADJECTIVE >TBL
|
|
DLESS? 'MAGMA-TIMER,1 \?CCL3
|
|
SET 'MAGMA-TIMER,0
|
|
ICALL2 DEQUEUE,I-MAGMA
|
|
REMOVE MAGMA-GLOW
|
|
ICALL REPLACE-SYN?,LAVA,W?ZZZP,W?CRUST
|
|
EQUAL? HERE,IN-THRIFF,FOREST-EDGE,ON-TRAIL /?CCL5
|
|
EQUAL? HERE,ON-PEAK \?CND4
|
|
?CCL5: BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "The red glow "
|
|
EQUAL? HERE,IN-THRIFF \?CCL10
|
|
PRINTI "from the south slowly fades from view"
|
|
JUMP ?CND8
|
|
?CCL10: PRINTI "of the lava fades, leaving a hard crust underfoot"
|
|
?CND8: PRINT PERIOD
|
|
?CND4: CALL GLOBAL-IN?,FOREST-EDGE,GLYPH
|
|
ZERO? STACK /?CND11
|
|
SET 'THRIFF-WON,TRUE-VALUE
|
|
ICALL2 DEQUEUE,I-CLERIC
|
|
FSET CLERIC,LIVING
|
|
SET 'CLERIC-SCRIPT,0
|
|
FCLEAR CLERIC,SEEN
|
|
ICALL2 QUEUE,I-THRIFF-WIN
|
|
ICALL2 QUEUE,I-UNHAPPY-XTREES
|
|
FSET XTREES,SEEN
|
|
MOVE RELIQUARY,CLERIC
|
|
EQUAL? HERE,IN-CHAPEL \?CND13
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "A messenger nymph appears above "
|
|
ICALL2 THE-PRINT,ALTAR
|
|
PRINTI ". ""Hooray!"" she cries. """
|
|
ICALL2 PRINT-TABLE,CHARNAME
|
|
PRINTI " outfoxed "
|
|
ICALL2 THE-PRINT,XTREES
|
|
PRINTR "!"""
|
|
?CND13: FCLEAR CLERIC,NODESC
|
|
SET 'X,FOREST-EDGE
|
|
EQUAL? HERE,IN-THRIFF \?CND15
|
|
SET 'X,HERE
|
|
?CND15: MOVE CLERIC,X
|
|
MOVE CONGREG,X
|
|
EQUAL? HERE,X \?CND11
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "A cheering crowd"
|
|
EQUAL? HERE,IN-THRIFF \?CCL21
|
|
PRINTI " streams out of "
|
|
ICALL2 THE-PRINT,CHAPEL
|
|
JUMP ?CND19
|
|
?CCL21: PRINT STR?617
|
|
PRINTI "village"
|
|
?CND19: PRINTI ", led by "
|
|
ICALL2 THE-PRINT,CLERIC
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND11: EQUAL? HERE,FOREST-EDGE \TRUE
|
|
ICALL1 SAY-XTREES
|
|
PRINTI " test the edges of the clearing with their roots"
|
|
FSET? BFLY,MUNGED \?CND24
|
|
FSET? BFLY,LIVING \?CND24
|
|
IN? BFLY,PLAYER /?CCL25
|
|
IN? BFLY,HERE \?CND24
|
|
?CCL25: PRINTR ", but still appear reluctant to approach you."
|
|
?CND24: PRINTI ". Finding no Glyphs of Warding or other inconveniences, they elect to "
|
|
ICALL2 XTREES-EAT-YOU,TRUE-VALUE
|
|
RTRUE
|
|
?CCL3: EQUAL? MAGMA-TIMER,1 \?CCL32
|
|
PUT TBL,0,W?RED
|
|
EQUAL? HERE,IN-THRIFF \?CCL35
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "The southern "
|
|
PRINT STR?618
|
|
RTRUE
|
|
?CCL35: EQUAL? HERE,FOREST-EDGE,ON-TRAIL,ON-PEAK \FALSE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "The lava's "
|
|
PRINT STR?618
|
|
EQUAL? HERE,FOREST-EDGE \TRUE
|
|
ICALL1 SAY-XTREES
|
|
PRINTR " shuffle a bit closer to the clearing's edge."
|
|
?CCL32: EQUAL? MAGMA-TIMER,2 \FALSE
|
|
PUT TBL,0,W?ORANGE
|
|
EQUAL? HERE,IN-THRIFF \?CCL43
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTR "You watch as the southern glow fades from yellow to orange."
|
|
?CCL43: EQUAL? HERE,FOREST-EDGE,ON-TRAIL,ON-PEAK \FALSE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "The lava's glow fades from yellow to orange as it cools."
|
|
CRLF
|
|
EQUAL? HERE,FOREST-EDGE \TRUE
|
|
ICALL1 SAY-XTREES
|
|
PRINTR " are keeping well away from the clearing's edge."
|
|
|
|
|
|
.FUNCT SAY-XTREES
|
|
FSET XTREES,SEEN
|
|
PRINT TAB
|
|
ICALL2 CTHE-PRINT,XTREES
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-XTREES,X,C
|
|
CALL GLOBAL-IN?,FOREST-EDGE,GLYPH
|
|
ZERO? STACK /?CCL3
|
|
EQUAL? HERE,FOREST-EDGE \FALSE
|
|
FSET? XTREES,SEEN \?CCL8
|
|
FCLEAR XTREES,SEEN
|
|
RFALSE
|
|
?CCL8: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
ICALL1 SAY-XTREES
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND10
|
|
CALL2 PICK-NEXT,CAROLS >X
|
|
CALL2 PICK-NEXT,HOW-SINGS
|
|
PRINT STACK
|
|
PRINT X
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CND10: CALL2 PICK-NEXT,XTREE-DOINGS
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL3: ZERO? MAGMA-TIMER \FALSE
|
|
EQUAL? HERE,FOREST-EDGE,IN-THRIFF \?CCL15
|
|
FSET? BFLY,MUNGED \?CCL15
|
|
FSET? BFLY,LIVING \?CCL15
|
|
IN? BFLY,PLAYER /?CTR14
|
|
IN? BFLY,HERE \?CCL15
|
|
?CTR14: ICALL1 SAY-XTREES
|
|
PRINTI " shuffle nervously at the edge of the "
|
|
CALL GLOBAL-IN?,SNOW,HERE
|
|
ZERO? STACK /?CCL24
|
|
PRINTB W?CLEARING
|
|
JUMP ?CND22
|
|
?CCL24: PRINTB W?LAVA
|
|
?CND22: PRINTI ". They"
|
|
PRINT STR?619
|
|
RTRUE
|
|
?CCL15: FSET? FOREST-EDGE,MUNGED /?CCL26
|
|
EQUAL? HERE,FOREST-EDGE \?CND27
|
|
ICALL1 XTREES-EAT-YOU
|
|
RTRUE
|
|
?CND27: FSET FOREST-EDGE,MUNGED
|
|
ICALL NEW-EXIT?,ON-TRAIL,P?EAST,FCONNECT,XTREES-BLOCK
|
|
ICALL NEW-EXIT?,ON-TRAIL,P?DOWN,FCONNECT,XTREES-BLOCK
|
|
ICALL NEW-EXIT?,IN-THRIFF,P?SOUTH,FCONNECT,XTREES-BLOCK
|
|
ICALL NEW-EXIT?,IN-THRIFF,P?UP,FCONNECT,XTREES-BLOCK
|
|
ICALL REPLACE-GLOBAL?,ON-TRAIL,NULL,XTREES
|
|
ICALL REPLACE-GLOBAL?,IN-THRIFF,NULL,XTREES
|
|
EQUAL? HERE,IN-THRIFF,IN-CHAPEL,ON-TRAIL \FALSE
|
|
ICALL1 XTREES-APPEAR
|
|
RTRUE
|
|
?CCL26: FSET? IN-THRIFF,MUNGED /FALSE
|
|
EQUAL? HERE,IN-THRIFF,IN-CHAPEL \?CND33
|
|
ICALL1 XTREES-EAT-YOU
|
|
RTRUE
|
|
?CND33: FSET IN-THRIFF,MUNGED
|
|
ICALL NEW-EXIT?,IN-PASTURE,P?SE,FCONNECT,XTREES-BLOCK
|
|
ICALL NEW-EXIT?,AT-FALLS,P?SW,FCONNECT,XTREES-BLOCK
|
|
ICALL REPLACE-GLOBAL?,IN-PASTURE,NULL,XTREES
|
|
ICALL REPLACE-GLOBAL?,AT-FALLS,NULL,XTREES
|
|
EQUAL? HERE,IN-PASTURE,AT-FALLS \FALSE
|
|
ICALL1 XTREES-APPEAR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT XTREES-BLOCK
|
|
IN? BFLY,PLAYER \?CND1
|
|
FSET? BFLY,MUNGED \?CND1
|
|
ICALL2 CTHE-PRINT,XTREES
|
|
PRINTI " fidget nervously as you approach, but refuse to stand aside."
|
|
CRLF
|
|
RFALSE
|
|
?CND1: PRINT STR?620
|
|
PRINTD XTREES
|
|
PRINT PERIOD
|
|
RFALSE
|
|
|
|
|
|
.FUNCT XTREES-EAT-YOU,X
|
|
ASSIGNED? 'X /?CND1
|
|
ICALL1 SAY-XTREES
|
|
?CND1: PRINTI " continue their delayed migration into Thriff, cheerfully trampling everything in their path. This includes you"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT XTREES-APPEAR,X
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-THEM-OBJECT,XTREES
|
|
PRINT TAB
|
|
EQUAL? HERE,IN-CHAPEL \?CND1
|
|
PRINT YOU-HEAR
|
|
PRINTC 97
|
|
PRINT STR?621
|
|
PRINTR "outside."
|
|
?CND1: PRINTC 65
|
|
PRINT STR?621
|
|
PRINTI "draws your attention to the "
|
|
SET 'X,W?SOUTH
|
|
EQUAL? HERE,IN-PASTURE \?CCL5
|
|
SET 'X,W?SOUTHEAST
|
|
JUMP ?CND3
|
|
?CCL5: EQUAL? HERE,AT-FALLS \?CCL7
|
|
SET 'X,W?SOUTHWEST
|
|
JUMP ?CND3
|
|
?CCL7: EQUAL? HERE,ON-TRAIL \?CND3
|
|
SET 'X,W?EAST
|
|
?CND3: PRINTB X
|
|
PRINTI ", where a solid wall of "
|
|
PRINTD XTREES
|
|
PRINTR " has completely choked the trail."
|
|
|
|
|
|
.FUNCT I-UNHAPPY-XTREES
|
|
EQUAL? HERE,FOREST-EDGE \FALSE
|
|
FSET? XTREES,SEEN \?CCL5
|
|
FCLEAR XTREES,SEEN
|
|
RFALSE
|
|
?CCL5: RANDOM 100
|
|
LESS? 50,STACK \FALSE
|
|
ICALL1 SAY-XTREES
|
|
CALL2 PICK-NEXT,SAD-TREES
|
|
PRINT STACK
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-HOUSEFALL
|
|
CALL1 PLAIN-ROOM?
|
|
ZERO? STACK /FALSE
|
|
FSET? FARM,NODESC \?CND1
|
|
FCLEAR FARM,NODESC
|
|
RFALSE
|
|
?CND1: ICALL2 DEQUEUE,I-HOUSEFALL
|
|
FCLEAR FARMHOUSE,NODESC
|
|
ZERO? FARM-ROOM /?CND5
|
|
ICALL1 DROP-FARM
|
|
?CND5: FSET CORBIES,SEEN
|
|
PRINTI " A movement overhead catches your eye"
|
|
PRINT PTAB
|
|
PRINTI "Oh, my. A small farmhouse is falling out of the clouds! You "
|
|
EQUAL? HERE,FARM-ROOM \?CND7
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,FARMHOUSE
|
|
PRINTI "dive out of the way just in time to avoid "
|
|
ICALL1 LUMBER
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND7: PRINTI "watch it spin as it tumbles earthward, and hear "
|
|
ICALL1 LUMBER
|
|
PRINTR " somewhere nearby."
|
|
|
|
|
|
.FUNCT LUMBER
|
|
PRINT LTHE
|
|
ICALL2 ITALICIZE,STR?622
|
|
PRINTI " of splintering lumber"
|
|
RFALSE
|
|
|
|
|
|
.FUNCT DROP-FARM
|
|
FCLEAR FARM,NODESC
|
|
MOVE FARM,FARM-ROOM
|
|
PUTP FARM-ROOM,P?SDESC,DESCRIBE-FARM-ROOM
|
|
ICALL REPLACE-GLOBAL?,FARM-ROOM,NULL,FARM-DOOR
|
|
ICALL REPLACE-GLOBAL?,FARM-ROOM,NULL,FARM-WINDOW
|
|
ICALL NEW-EXIT?,IN-FARM,P?NORTH,1409,FARM-ROOM,FARM-DOOR
|
|
ICALL NEW-EXIT?,IN-FARM,P?OUT,1409,FARM-ROOM,FARM-DOOR
|
|
ICALL NEW-EXIT?,FARM-ROOM,P?SOUTH,1409,IN-FARM,FARM-DOOR
|
|
ICALL NEW-EXIT?,FARM-ROOM,P?IN,1409,IN-FARM,FARM-DOOR
|
|
RFALSE
|
|
|
|
|
|
.FUNCT I-IQ
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
PRINT TAB
|
|
PRINTI "Your forehead tingles oddly for a moment."
|
|
CRLF
|
|
ICALL UPDATE-STAT,20,INTELLIGENCE,TRUE-VALUE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-HEAL,STAT,MAX,OLD
|
|
PRINT TAB
|
|
PRINTI "Your body is flooded with an indescribable sense of well-being."
|
|
CRLF
|
|
?PRG1: GET STATS,STAT >OLD
|
|
GET MAXSTATS,STAT >MAX
|
|
GRTR? MAX,OLD \?CCL5
|
|
SUB MAX,OLD
|
|
ICALL UPDATE-STAT,STACK,STAT
|
|
JUMP ?CND3
|
|
?CCL5: EQUAL? MAX,OLD \?CND3
|
|
ICALL UPDATE-STAT,5,STAT,TRUE-VALUE
|
|
?CND3: IGRTR? 'STAT,STRENGTH \?PRG1
|
|
ICALL1 BMODE-OFF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-MIGHT,MAX,OLD
|
|
PRINT TAB
|
|
PRINTI "You feel a surge of tension in your arms and shoulders."
|
|
CRLF
|
|
GET STATS,STRENGTH >OLD
|
|
GET MAXSTATS,STRENGTH >MAX
|
|
GRTR? MAX,OLD \?CCL3
|
|
SUB MAX,OLD
|
|
ICALL UPDATE-STAT,STACK,STRENGTH
|
|
RTRUE
|
|
?CCL3: EQUAL? MAX,OLD \TRUE
|
|
ICALL UPDATE-STAT,16,STRENGTH,TRUE-VALUE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-FORGET,ANY,OBJ,LEN
|
|
FCLEAR GLYPH,SEEN
|
|
FIRST? ROOMS >OBJ \?CND1
|
|
?PRG3: FCLEAR OBJ,VIEWED
|
|
NEXT? OBJ >OBJ /?PRG3
|
|
?CND1: BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
SET 'P-WALK-DIR,FALSE-VALUE
|
|
SET 'OLD-HERE,FALSE-VALUE
|
|
GET MAGIC-ITEMS,0 >LEN
|
|
?PRG7: GET MAGIC-ITEMS,LEN >OBJ
|
|
FSET? OBJ,IDENTIFIED \?CND9
|
|
INC 'ANY
|
|
FCLEAR OBJ,IDENTIFIED
|
|
FCLEAR OBJ,PROPER
|
|
?CND9: DLESS? 'LEN,1 \?PRG7
|
|
PRINT TAB
|
|
PRINTR "An uneasy feeling creeps into your soul."
|
|
|
|
|
|
.FUNCT I-DEATH
|
|
PRINT TAB
|
|
PRINTI "A sickening bile rises in your throat, and sweat breaks out on your forehead as your pulse races out of control. Moments later, you experience the combined effects of coronary arrest, catastrophic respiratory collapse and rickets"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-CAKE
|
|
IN? CAKE,IN-GURTH \FALSE
|
|
REMOVE CAKE
|
|
EQUAL? HERE,IN-GURTH \FALSE
|
|
BOR NEW-DBOX,SHOWING-ROOM >NEW-DBOX
|
|
SET 'P-IT-OBJECT,NOT-HERE-OBJECT
|
|
PRINT TAB
|
|
PRINTI "An alley cat races between your legs, snatches "
|
|
ICALL2 THE-PRINT,CAKE
|
|
PRINTI " and"
|
|
PRINT STR?501
|
|
PRINTR "crowd."
|
|
|
|
|
|
.FUNCT I-QUAKE
|
|
PRINT TAB
|
|
IGRTR? 'QUAKE-TIMER,4 \?CCL3
|
|
ICALL1 ENDING
|
|
RTRUE
|
|
?CCL3: EQUAL? QUAKE-TIMER,4 \?CCL5
|
|
ICALL2 CTHE-PRINT,GROUND
|
|
PRINTR " heaves sharply to the right, and bits of broken rock shower down on your head. One more like that..."
|
|
?CCL5: EQUAL? QUAKE-TIMER,3 \?CCL7
|
|
PRINTR "The rumble grows to a roar as a mighty earthquake rocks the caverns to their very roots."
|
|
?CCL7: EQUAL? QUAKE-TIMER,2 \?CCL9
|
|
PRINTR "Another tremor wracks the earth, and a deep, ominous rumble begins to swell around you."
|
|
?CCL9: ICALL2 CTHE-PRINT,GROUND
|
|
PRINTR " underfoot trembles for a moment."
|
|
|
|
.ENDI
|