1996 lines
46 KiB
Plaintext
1996 lines
46 KiB
Plaintext
|
|
|
|
.FUNCT SALT-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 PRINTCA,SALT
|
|
PRINTI " is seated before "
|
|
ICALL2 PRINTA,EASEL
|
|
PRINTI ", dabbing color onto "
|
|
ICALL2 PRINTA,CANVAS
|
|
CALL2 SEE-ANYTHING-IN?,SALT
|
|
ZERO? STACK /?CND4
|
|
PRINTI ". He's holding "
|
|
ICALL2 CONTENTS,SALT
|
|
?CND4: PRINTC PER
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-WINNER \?CCL7
|
|
EQUAL? PRSA,V?HELLO \?CCL10
|
|
EQUAL? PRSO,ROOMS,SALT \?CCL10
|
|
ICALL1 GREET-SAILOR
|
|
RETURN 2
|
|
?CCL10: EQUAL? PRSA,V?TELL-ABOUT,V?SSHOW \?CCL16
|
|
EQUAL? PRSO,ME \?CCL16
|
|
ICALL2 ASK-SALT-ABOUT,PRSI
|
|
RETURN 2
|
|
?CCL16: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO /?CTR21
|
|
EQUAL? PRSA,V?WHERE /?CTR21
|
|
EQUAL? PRSA,V?SHOW \?CCL22
|
|
EQUAL? PRSI,ME \?CCL22
|
|
?CTR21: ICALL2 ASK-SALT-ABOUT,PRSO
|
|
RETURN 2
|
|
?CCL22: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL31
|
|
EQUAL? PRSI,ME \?CCL31
|
|
ICALL2 ASK-SALT-FOR,PRSO
|
|
RETURN 2
|
|
?CCL31: EQUAL? PRSA,V?SGIVE,V?SGET-FOR \?CND8
|
|
EQUAL? PRSO,ME \?CND8
|
|
ICALL2 ASK-SALT-FOR,PRSI
|
|
RETURN 2
|
|
?CND8: ICALL1 DEAF-SALT
|
|
RETURN 2
|
|
?CCL7: ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL46
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL49
|
|
ICALL2 HARMLESS,PRSI
|
|
RTRUE
|
|
?CCL49: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL51
|
|
ICALL2 GIVE-TO-SALT,PRSO
|
|
RTRUE
|
|
?CCL51: EQUAL? PRSA,V?SHOW \FALSE
|
|
ICALL DO-GLANCE,SALT,PRSO
|
|
RTRUE
|
|
?CCL46: EQUAL? PRSA,V?TELL /FALSE
|
|
EQUAL? PRSA,V?EXAMINE \?CCL56
|
|
ICALL1 CTHE-PRINT
|
|
PRINTR "'s ice-blue eyes glance up from his work."
|
|
?CCL56: EQUAL? PRSA,V?YELL \?CCL58
|
|
ICALL1 NOT-DEAF
|
|
RTRUE
|
|
?CCL58: EQUAL? PRSA,V?ASK-FOR \?CCL60
|
|
ICALL2 ASK-SALT-FOR,PRSI
|
|
RTRUE
|
|
?CCL60: EQUAL? PRSA,V?ASK-ABOUT \?CCL62
|
|
ICALL2 ASK-SALT-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL62: EQUAL? PRSA,V?TELL-ABOUT \?CCL64
|
|
ICALL DO-GLANCE,SALT,PRSI
|
|
RTRUE
|
|
?CCL64: EQUAL? PRSA,V?HELLO,V?GOODBYE,V?WAVE-AT \?CCL66
|
|
ICALL1 GREET-SAILOR
|
|
RTRUE
|
|
?CCL66: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
ICALL1 HARMLESS
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOT-DEAF
|
|
FSET SALT,SEEN
|
|
ICALL2 CTHE-PRINT,SALT
|
|
PRINTR " cringes. ""I'm not deaf, y'know!"""
|
|
|
|
|
|
.FUNCT DEAF-SALT,X
|
|
FSET SALT,SEEN
|
|
RANDOM 100 >X
|
|
LESS? X,33 \?CCL3
|
|
ICALL2 CTHE-PRINT,SALT
|
|
PRINTR " doesn't look up from his work. Perhaps he didn't hear you."
|
|
?CCL3: LESS? X,67 \?CND1
|
|
ICALL2 CTHE-PRINT,SALT
|
|
PRINTR " cocks his head. ""Eh? Didn't catch that."""
|
|
?CND1: PRINTI """Stop whispering, "
|
|
ICALL1 BOY-GIRL
|
|
PRINTR "! Can't hear a word you're sayin'."""
|
|
|
|
|
|
.FUNCT BOY-GIRL
|
|
FSET? PLAYER,FEMALE \?CND1
|
|
PRINTB W?GIRL
|
|
RTRUE
|
|
?CND1: PRINTB W?BOY
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GREET-SAILOR
|
|
FSET SALT,SEEN
|
|
RANDOM 100
|
|
LESS? 33,STACK /?CND1
|
|
ICALL1 DEAF-SALT
|
|
RTRUE
|
|
?CND1: ICALL2 CTHE-PRINT,SALT
|
|
FSET? SALT,TOUCHED \?CND3
|
|
PRINTR " shrugs. ""Okay. Hello, again."""
|
|
?CND3: FSET SALT,TOUCHED
|
|
EQUAL? P-PRSA-WORD,W?HELLO \?CCL7
|
|
CALL2 NOUN-USED?,W?SAILOR
|
|
ZERO? STACK /?CCL7
|
|
PRINTI " chuckles softly and nods. ""Thought I 'membered you. "
|
|
JUMP ?CND5
|
|
?CCL7: PRINTI " nods. """
|
|
?CND5: PRINTI "Hello, "
|
|
ICALL1 BOY-GIRL
|
|
PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-SALT-ABOUT,OBJ,TBL,LEN,X
|
|
FSET SALT,SEEN
|
|
RANDOM 100
|
|
LESS? 33,STACK /?CND1
|
|
ICALL1 DEAF-SALT
|
|
RTRUE
|
|
?CND1: CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK \?CCL5
|
|
ICALL2 PERPLEXED,SALT
|
|
PRINTI "Not sure"
|
|
ICALL2 WHO-WHAT,OBJ
|
|
PRINTI "you're talkin' 'bout, "
|
|
ICALL1 BOY-GIRL
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CCL5: EQUAL? OBJ,SALT \?CCL7
|
|
PRINTR """Been retired, ah, goin' on five years."""
|
|
?CCL7: EQUAL? OBJ,SHILL \?CCL9
|
|
PRINTR """Lucky ye saw it a-floatin' there."""
|
|
?CCL9: EQUAL? OBJ,EASEL,CANVAS \?CCL11
|
|
PRINTR """Like it? Reminds me o' the good old days."""
|
|
?CCL11: RANDOM 100
|
|
LESS? 75,STACK /?CND3
|
|
ICALL1 DEAF-SALT
|
|
RTRUE
|
|
?CND3: ICALL IGNORANT,SALT,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-SALT-FOR,OBJ,X,L
|
|
FSET SALT,SEEN
|
|
RANDOM 100
|
|
LESS? 33,STACK /?CCL3
|
|
ICALL1 DEAF-SALT
|
|
RTRUE
|
|
?CCL3: EQUAL? OBJ,EASEL,CANVAS \?CND1
|
|
PRINTR """Sorry. Not for sale."""
|
|
?CND1: ICALL AINT-GOT,SALT,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT AINT-GOT,WHO,OBJ
|
|
PRINTI """Don't have "
|
|
ICALL2 PRINTA,OBJ
|
|
PRINT STR?623
|
|
ICALL2 THE-PRINT,WHO
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GIVE-TO-SALT,OBJ
|
|
FSET SALT,SEEN
|
|
CALL GIVING-LOOT?,OBJ,SALT
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NO-THANKS,SALT
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NO-THANKS,WHO
|
|
ICALL2 CTHE-PRINT,WHO
|
|
PRINTR " shakes his head. ""No, thanks."""
|
|
|
|
|
|
.FUNCT DO-GLANCE,WHO,OBJ
|
|
FSET WHO,SEEN
|
|
ICALL2 CTHE-PRINT,WHO
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CCL3
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
JUMP ?CND1
|
|
?CCL3: PRINT STR?624
|
|
?CND1: PRINT STR?625
|
|
RTRUE
|
|
|
|
|
|
.FUNCT COOK-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
PRINTI "A skinny old cook is bustling around the kitchen."
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-WINNER \?CCL5
|
|
EQUAL? PRSA,V?TELL-ABOUT,V?SSHOW \?CCL8
|
|
EQUAL? PRSO,ME \?CCL8
|
|
ICALL2 ASK-COOK-ABOUT,PRSI
|
|
RETURN 2
|
|
?CCL8: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO /?CTR13
|
|
EQUAL? PRSA,V?WHERE /?CTR13
|
|
EQUAL? PRSA,V?SHOW \?CCL14
|
|
EQUAL? PRSI,ME \?CCL14
|
|
?CTR13: ICALL2 ASK-COOK-ABOUT,PRSO
|
|
RETURN 2
|
|
?CCL14: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL23
|
|
EQUAL? PRSI,ME \?CCL23
|
|
ICALL2 ASK-COOK-FOR,PRSO
|
|
RETURN 2
|
|
?CCL23: EQUAL? PRSA,V?SGIVE,V?SGET-FOR \?CND6
|
|
EQUAL? PRSO,ME \?CND6
|
|
ICALL2 ASK-COOK-FOR,PRSI
|
|
RETURN 2
|
|
?CND6: ICALL2 CTHE-PRINT,COOK
|
|
PRINTI " scowls. ""Don't bother me now, I'm busy!"""
|
|
CRLF
|
|
RETURN 2
|
|
?CCL5: ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL38
|
|
FSET? PRSI,NODESC \?CCL41
|
|
ICALL1 CANT-FROM-HERE
|
|
RTRUE
|
|
?CCL41: EQUAL? PRSA,V?BUY-FROM \?CCL43
|
|
ICALL2 ASK-COOK-FOR,PRSO
|
|
RTRUE
|
|
?CCL43: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL45
|
|
ICALL2 GIVE-TO-COOK,PRSO
|
|
RTRUE
|
|
?CCL45: EQUAL? PRSA,V?SHOW \FALSE
|
|
ICALL2 SHOW-TO-COOK,PRSO
|
|
RTRUE
|
|
?CCL38: FSET? PRSO,NODESC \?CCL48
|
|
INTBL? PRSA,TALKVERBS,NTVERBS >X \?CND49
|
|
ICALL1 PCLEAR
|
|
PRINTI "He"
|
|
PRINT STR?626
|
|
RETURN 2
|
|
?CND49: ICALL1 CANT-FROM-HERE
|
|
RTRUE
|
|
?CCL48: EQUAL? PRSA,V?ASK-FOR \?CCL54
|
|
ICALL2 ASK-COOK-FOR,PRSI
|
|
RTRUE
|
|
?CCL54: EQUAL? PRSA,V?ASK-ABOUT \?CCL56
|
|
ICALL2 ASK-COOK-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL56: EQUAL? PRSA,V?TELL-ABOUT \FALSE
|
|
ICALL2 SHOW-TO-COOK,PRSI
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-COOK-ABOUT,OBJ,TBL,LEN,X
|
|
ICALL2 SEE-CHARACTER,COOK
|
|
FSET COOK,SEEN
|
|
EQUAL? OBJ,BOTTLE \?CCL3
|
|
FSET? ONION,SEEN \?CCL6
|
|
PRINTR """Got it put away, nice and safe. Thanks again."""
|
|
?CCL6: FSET? BOTTLE,IDENTIFIED \?CCL8
|
|
PRINTI """This here onion's yours if you "
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CND9
|
|
PRINTR "hand it over."""
|
|
?CND9: PRINTR "get it for me."""
|
|
?CCL8: FSET? ONION,TOUCHED \?CND4
|
|
FCLEAR COOK,SEEN
|
|
PRINTI """Ahem."""
|
|
CRLF
|
|
ICALL1 I-ONION-OFFER
|
|
RTRUE
|
|
?CND4: ICALL DO-GLANCE,COOK,CELLAR-DOOR
|
|
RTRUE
|
|
?CCL3: EQUAL? OBJ,COOK \?CCL13
|
|
PRINTR """Grote Clutchcake's the name."""
|
|
?CCL13: EQUAL? OBJ,CELLAR,CELLAR-DOOR \?CCL15
|
|
PRINTR """Used t'be a wine cellar. Can't go down no more; too dangerous."""
|
|
?CCL15: CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK \?CCL17
|
|
ICALL2 PERPLEXED,COOK
|
|
PRINTI "Don't know"
|
|
ICALL2 WHO-WHAT,OBJ
|
|
PRINTR "you're talkin' 'bout."""
|
|
?CCL17: EQUAL? OBJ,ONION \?CND1
|
|
ICALL1 COOK-MENTIONS-ONION
|
|
RTRUE
|
|
?CND1: ICALL2 CTHE-PRINT,COOK
|
|
PRINTI " shrugs impatiently. ""Can't say anythin' 'bout "
|
|
ICALL2 PRONOUN,OBJ
|
|
PRINTR " you wouldn't know already."""
|
|
|
|
|
|
.FUNCT ASK-COOK-FOR,OBJ,X,L
|
|
ICALL2 SEE-CHARACTER,COOK
|
|
LOC OBJ >L
|
|
FSET COOK,SEEN
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CND1
|
|
EQUAL? OBJ,ONION \?CND1
|
|
FSET? OBJ,SEEN \?CCL6
|
|
PRINTR """It's yours. Roll it outa here."""
|
|
?CCL6: FSET? BOTTLE,IDENTIFIED \?CND4
|
|
PRINTI """Yours for "
|
|
ICALL2 THE-PRINT,BOTTLE
|
|
FSET? BOTTLE,TOUCHED /?CND8
|
|
PRINTI " downstairs"
|
|
?CND8: PRINT PERQ
|
|
RTRUE
|
|
?CND4: ICALL1 COOK-MENTIONS-ONION
|
|
RTRUE
|
|
?CND1: ICALL AINT-GOT,COOK,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT COOK-MENTIONS-ONION
|
|
FSET? ONION,TOUCHED /?CND1
|
|
FSET ONION,TOUCHED
|
|
FSET COOK,SEEN
|
|
ICALL2 DEQUEUE,I-COOK
|
|
ICALL2 QUEUE,I-ONION-OFFER
|
|
ICALL2 CTHE-PRINT,COOK
|
|
PRINTI " gives "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTI " an affectionate kick. "
|
|
?CND1: PRINTR """Nice, eh? Won second place at the Borphee County Fair."""
|
|
|
|
|
|
.FUNCT STOP-ONION-OFFER
|
|
FSET BOTTLE,IDENTIFIED
|
|
ICALL2 DEQUEUE,I-ONION-OFFER
|
|
CALL2 QUEUED?,I-COOK
|
|
ZERO? STACK \?CND1
|
|
ICALL2 QUEUE,I-COOK
|
|
?CND1: FSET COOK,SEEN
|
|
RFALSE
|
|
|
|
|
|
.FUNCT GIVE-TO-COOK,OBJ
|
|
ICALL2 SEE-CHARACTER,COOK
|
|
FSET COOK,SEEN
|
|
CALL GIVING-LOOT?,OBJ,COOK
|
|
ZERO? STACK \TRUE
|
|
ICALL2 CTHE-PRINT,COOK
|
|
EQUAL? OBJ,BOTTLE \?CND3
|
|
ICALL2 VANISH,OBJ
|
|
FSET ONION,SEEN
|
|
PRINTI "'s eyes grow large as he takes "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI ". ""Been after this thing for years,"" he cries, turning it over and over in his hands before stowing it quickly out of sight. "
|
|
FSET? BOTTLE,IDENTIFIED /?CND5
|
|
PRINTI """I owe you a big favor, "
|
|
ICALL1 BOY-GIRL
|
|
PRINTI ". A "
|
|
ICALL2 ITALICIZE,STR?627
|
|
PRINTI " big favor. Big as this here onion."" "
|
|
?CND5: ICALL1 STOP-ONION-OFFER
|
|
PRINTI "Your eyes follow his to "
|
|
ICALL2 THE-PRINT,ONION
|
|
PRINTR " near the exit. ""All yours,"" he says, patting it affectionately."
|
|
?CND3: PRINTI " refuses "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTR " with a shake of his head. ""No, thanks."""
|
|
|
|
|
|
.FUNCT COOK-SEES-BOTTLE
|
|
ICALL1 STOP-ONION-OFFER
|
|
FSET BOTTLE,MUNGED
|
|
PRINTI """The bottle!"" gasps "
|
|
ICALL2 THE-PRINT,COOK
|
|
PRINTI " when he sees it"
|
|
IN? BOTTLE,PLAYER \?CND1
|
|
PRINTI " in your hands"
|
|
?CND1: PRINT STR?628
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SHOW-TO-COOK,OBJ
|
|
ICALL2 SEE-CHARACTER,COOK
|
|
FSET COOK,SEEN
|
|
EQUAL? OBJ,BOTTLE \?CND1
|
|
FSET? OBJ,IDENTIFIED /?CND3
|
|
ICALL1 COOK-SEES-BOTTLE
|
|
RTRUE
|
|
?CND3: ICALL1 STOP-ONION-OFFER
|
|
PRINTI """That's the one!"" he gasps"
|
|
PRINT STR?628
|
|
RTRUE
|
|
?CND1: PRINTI """How interesting,"" yawns "
|
|
ICALL2 THE-PRINT,COOK
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CND5
|
|
PRINTI ", glancing at "
|
|
ICALL2 THE-PRINT,OBJ
|
|
?CND5: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT BANDITS-F,CONTEXT,X
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL5
|
|
EQUAL? PRSA,V?POINT-AT,V?TOUCH-TO,V?FIRE-AT \?CCL8
|
|
PRINTR "There are too many of them here."
|
|
?CCL8: EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL10
|
|
ICALL1 SUICIDE
|
|
RTRUE
|
|
?CCL10: EQUAL? PRSA,V?GIVE,V?SHOW,V?GET-FOR /?CCL11
|
|
EQUAL? PRSA,V?FEED \FALSE
|
|
?CCL11: ICALL1 HEEDLESS
|
|
RTRUE
|
|
?CCL5: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL15
|
|
ICALL1 HEEDLESS
|
|
RETURN 2
|
|
?CCL15: EQUAL? PRSA,V?EXAMINE,V?LOOK-ON \?CCL19
|
|
ICALL2 NOSEY,STR?629
|
|
RTRUE
|
|
?CCL19: EQUAL? PRSA,V?LISTEN \?CCL21
|
|
ICALL2 NOSEY,STR?630
|
|
RTRUE
|
|
?CCL21: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
ICALL1 SUICIDE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOSEY,STR
|
|
FSET PRSO,SEEN
|
|
PRINTI """Who're you "
|
|
PRINT STR
|
|
PRINTR "?"" demands a very large bandit. You wisely decide to turn your attention elsewhere."
|
|
|
|
|
|
.FUNCT SUICIDE
|
|
PRINTI "Suicide. Monsters are one thing; an armed "
|
|
PRINTD BANDITS
|
|
PRINTR " is quite another."
|
|
|
|
|
|
.FUNCT HEEDLESS
|
|
ICALL1 PCLEAR
|
|
PRINTR "The bandits glare at your interruption. ""Scram."""
|
|
|
|
|
|
.FUNCT OWOMAN-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 PRINTCA,OWOMAN
|
|
PRINT SIS
|
|
CALL2 PICK-NEXT,OWOMAN-EYES
|
|
PRINT STACK
|
|
PRINTC PER
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-WINNER \?CCL5
|
|
EQUAL? PRSA,V?TELL-ABOUT,V?SSHOW \?CCL8
|
|
EQUAL? PRSO,ME \?CCL8
|
|
ICALL2 ASK-OWOMAN-ABOUT,PRSI
|
|
RETURN 2
|
|
?CCL8: EQUAL? PRSA,V?EXAMINE,V?REQUEST,V?WHAT /?CTR13
|
|
EQUAL? PRSA,V?WHO,V?WHERE /?CTR13
|
|
EQUAL? PRSA,V?SHOW \?CCL14
|
|
EQUAL? PRSI,ME \?CCL14
|
|
?CTR13: ICALL2 ASK-OWOMAN-ABOUT,PRSO
|
|
RETURN 2
|
|
?CCL14: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL23
|
|
EQUAL? PRSI,ME \?CCL23
|
|
ICALL2 ASK-OWOMAN-FOR,PRSO
|
|
RETURN 2
|
|
?CCL23: EQUAL? PRSA,V?SGIVE,V?SGET-FOR \?CCL29
|
|
EQUAL? PRSO,ME \?CCL29
|
|
ICALL2 ASK-OWOMAN-FOR,PRSI
|
|
RETURN 2
|
|
?CCL29: EQUAL? PRSA,V?SELL-TO \?CCL35
|
|
EQUAL? PRSI,ME \?CCL35
|
|
ICALL BUY-X-WITH-Y,PRSO,MONEY
|
|
RTRUE
|
|
?CCL35: EQUAL? PRSA,V?SSELL-TO \?CCL39
|
|
EQUAL? PRSO,ME \?CCL39
|
|
ICALL BUY-X-WITH-Y,PRSI,MONEY
|
|
RTRUE
|
|
?CCL39: EQUAL? PRSA,V?HELLO,V?GOODBYE \?CND6
|
|
EQUAL? PRSO,ROOMS,OWOMAN \?CND6
|
|
ICALL1 GREET-OWOMAN
|
|
RETURN 2
|
|
?CND6: PRINTI """I'm not used to being ordered about,"" observes "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI " coldly."
|
|
CRLF
|
|
RETURN 2
|
|
?CCL5: ZERO? CONTEXT \FALSE
|
|
CALL2 NOUN-USED?,W?Y'GAEL
|
|
ZERO? STACK /?CND1
|
|
FSET? OWOMAN,MUNGED /?CND1
|
|
FSET OWOMAN,MUNGED
|
|
PRINT CTHELADY
|
|
PRINT STR?631
|
|
PRINTI " as you speak her Name."
|
|
CRLF
|
|
RETURN 2
|
|
?CND1: ZERO? NOW-PRSI? /?CCL58
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL61
|
|
ICALL2 HARMLESS,PRSI
|
|
RTRUE
|
|
?CCL61: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL63
|
|
ICALL2 GIVE-TO-OWOMAN,PRSO
|
|
RTRUE
|
|
?CCL63: EQUAL? PRSA,V?SHOW \?CCL65
|
|
ICALL2 ASK-OWOMAN-ABOUT,PRSO
|
|
RTRUE
|
|
?CCL65: EQUAL? PRSA,V?SELL-TO \FALSE
|
|
ICALL2 TRADE-FOR-LOOT,PRSO
|
|
RTRUE
|
|
?CCL58: EQUAL? PRSA,V?EXAMINE \?CCL68
|
|
GETP PRSO,P?LAST-LOC >X
|
|
CALL2 VISIBLE?,X
|
|
ZERO? STACK \?CND69
|
|
ZERO? X /?CND69
|
|
PRINTI "That's odd. She looks just like the woman you met in "
|
|
ICALL2 THE-PRINT,X
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND69: ICALL1 CTHE-PRINT
|
|
PRINTR " regards you with equal interest."
|
|
?CCL68: EQUAL? PRSA,V?ASK-FOR \?CCL73
|
|
ICALL2 ASK-OWOMAN-FOR,PRSI
|
|
RTRUE
|
|
?CCL73: EQUAL? PRSA,V?ASK-ABOUT \?CCL75
|
|
ICALL2 ASK-OWOMAN-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL75: EQUAL? PRSA,V?TELL-ABOUT \?CCL77
|
|
IN? PRSI,PLAYER \?CND78
|
|
ICALL2 GIVE-TO-OWOMAN,PRSI
|
|
RTRUE
|
|
?CND78: ICALL2 ASK-OWOMAN-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL77: EQUAL? PRSA,V?HELLO,V?WAVE-AT,V?GOODBYE \?CCL81
|
|
ICALL1 GREET-OWOMAN
|
|
RTRUE
|
|
?CCL81: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
ICALL1 HARMLESS
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GREET-OWOMAN
|
|
FSET OWOMAN,SEEN
|
|
PRINT CTHELADY
|
|
PRINTR " nods graciously."
|
|
|
|
|
|
.FUNCT ASK-OWOMAN-ABOUT,OBJ,TBL,LEN,X
|
|
ICALL2 SEE-CHARACTER,OWOMAN
|
|
EQUAL? OBJ,MONEY,INTNUM \?CCL3
|
|
PRINTR """My favorite subject."""
|
|
?CCL3: CALL WHAT-TALK?,OWOMAN,OBJ
|
|
ZERO? STACK \TRUE
|
|
EQUAL? OBJ,KEY1,KEY2,KEY3 \?CCL7
|
|
PRINTR """How tawdry."""
|
|
?CCL7: EQUAL? OBJ,PARASOL \?CCL9
|
|
PRINT CTHELADY
|
|
PRINT STR?631
|
|
PRINT STR?625
|
|
RTRUE
|
|
?CCL9: EQUAL? OBJ,BOUTIQUE,WEAPON-SHOP,MSHOPPE /?CTR10
|
|
EQUAL? OBJ,BCASE,MCASE,WCASE \?CCL11
|
|
?CTR10: PRINTR """Best selection in the Southlands."""
|
|
?CCL11: EQUAL? OBJ,CURTAIN,OWOMAN,ME \?CCL15
|
|
PRINT CTHELADY
|
|
PRINTI " smiles wryly"
|
|
PRINT STR?625
|
|
RTRUE
|
|
?CCL15: EQUAL? HERE,IN-BOUTIQUE \?CCL17
|
|
CALL2 BOUTIQUE-KNOWLEDGE?,OBJ
|
|
ZERO? STACK \TRUE
|
|
?CCL17: EQUAL? HERE,IN-WEAPON \?CCL21
|
|
CALL2 WEAPON-KNOWLEDGE?,OBJ
|
|
ZERO? STACK \TRUE
|
|
?CCL21: EQUAL? HERE,IN-MAGICK \?CND1
|
|
CALL2 MAGICK-KNOWLEDGE?,OBJ
|
|
ZERO? STACK \TRUE
|
|
?CND1: GET OWOMAN-TABLE,0 >LEN
|
|
?PRG27: GET OWOMAN-TABLE,LEN >TBL
|
|
GET TBL,0 >X
|
|
EQUAL? X,OBJ \?CCL31
|
|
PRINTC 34
|
|
GET TBL,1
|
|
PRINT STACK
|
|
GETP HERE,P?THIS-CASE
|
|
ICALL REVEAL-VALUE,X,STACK
|
|
RTRUE
|
|
?CCL31: DLESS? 'LEN,1 \?PRG27
|
|
EQUAL? HERE,IN-MAGICK /?CND33
|
|
GET MAGIC-ITEMS,0 >X
|
|
ZERO? X /?CND33
|
|
INTBL? OBJ,MAGIC-ITEMS+2,X >X \?CND33
|
|
ICALL ASK-IN,OBJ,STR?644
|
|
RTRUE
|
|
?CND33: EQUAL? HERE,IN-WEAPON /?CND38
|
|
GET WEAPON-ITEMS,0 >X
|
|
ZERO? X /?CND38
|
|
INTBL? OBJ,WEAPON-ITEMS+2,X >X \?CND38
|
|
ICALL ASK-IN,OBJ,STR?645
|
|
RTRUE
|
|
?CND38: EQUAL? HERE,IN-BOUTIQUE /?CND43
|
|
GET ARMOR-ITEMS,0 >X
|
|
ZERO? X /?CND43
|
|
INTBL? OBJ,ARMOR-ITEMS+2,X >X \?CND43
|
|
ICALL ASK-IN,OBJ,STR?646
|
|
RTRUE
|
|
?CND43: PRINTI """I'm afraid I can't tell you very much about "
|
|
ICALL2 PRONOUN,OBJ
|
|
PRINTI ","" apologizes "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-IN,OBJ,STR
|
|
PRINT CTHELADY
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI ". ""Can't tell you much about this here,"" she mutters. ""Bet the "
|
|
PRINT STR
|
|
PRINTR " would know something, though."""
|
|
|
|
|
|
.FUNCT BOUTIQUE-KNOWLEDGE?,OBJ
|
|
EQUAL? OBJ,PACK \?CCL3
|
|
PRINTI """Perfect for those long adventures"
|
|
JUMP ?CND1
|
|
?CCL3: EQUAL? OBJ,CLOAK \?CCL5
|
|
PRINTI """A fine example of elvish tailoring. 'Tis said a potent virtue is woven into the cloth"
|
|
JUMP ?CND1
|
|
?CCL5: EQUAL? OBJ,TUNIC \?CCL7
|
|
PRINTI """Oh, that. Last week's fashion, I'm afraid"
|
|
JUMP ?CND1
|
|
?CCL7: EQUAL? OBJ,SCALE \?CCL9
|
|
PRINTI """Good basic protection. Not too bulky, not too expensive"
|
|
JUMP ?CND1
|
|
?CCL9: EQUAL? OBJ,CHAIN \?CCL11
|
|
PRINTI """An effective design, if not particularly comfortable"
|
|
JUMP ?CND1
|
|
?CCL11: EQUAL? OBJ,PLATE \?CCL13
|
|
PRINTI """The last word in protection,"" states "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI " flatly. ""That stuff'll turn aside anything short of a grue's fangs"
|
|
?CND1: ICALL REVEAL-VALUE,OBJ,BCASE
|
|
RTRUE
|
|
?CCL13: EQUAL? OBJ,HELM,SCABBARD \FALSE
|
|
ICALL2 SECRET-VIRTUE,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT WEAPON-KNOWLEDGE?,OBJ
|
|
EQUAL? OBJ,ARROW \?CCL3
|
|
PRINTI """A primitive design; high drag coefficient"
|
|
JUMP ?CND1
|
|
?CCL3: EQUAL? OBJ,DAGGER \?CCL5
|
|
PRINTI """Suitable for cleaning fish, I suppose"
|
|
JUMP ?CND1
|
|
?CCL5: EQUAL? OBJ,SWORD \?CCL7
|
|
PRINTI """Of ancient elvish workmanship, if I'm not mistaken"
|
|
JUMP ?CND1
|
|
?CCL7: EQUAL? OBJ,SHILL \?CCL9
|
|
PRINTI """Many an orc's skull bears the mark of this "
|
|
PRINTD SHILL
|
|
JUMP ?CND1
|
|
?CCL9: EQUAL? OBJ,AXE \?CCL11
|
|
PRINTI """A real skull-cleaver, that one"
|
|
?CND1: ICALL REVEAL-VALUE,OBJ,WCASE
|
|
RTRUE
|
|
?CCL11: EQUAL? OBJ,PHASE,SCABBARD,HELM \FALSE
|
|
ICALL2 SECRET-VIRTUE,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MAGICK-KNOWLEDGE?,OBJ,VAL,ACT,FX
|
|
SET 'IDING,OBJ
|
|
GETP OBJ,P?ACTION >ACT
|
|
GETP OBJ,P?EFFECT >FX
|
|
EQUAL? ACT,SLEEP-WAND-F \?CCL3
|
|
ICALL1 DO-ID
|
|
PRINTI "Aim this at a creature and watch it stagger"
|
|
JUMP ?CND1
|
|
?CCL3: EQUAL? ACT,BLAST-WAND-F \?CCL5
|
|
ICALL1 DO-ID
|
|
PRINTI "Instant death, with few exceptions"
|
|
JUMP ?CND1
|
|
?CCL5: EQUAL? ACT,TELE-WAND-F \?CCL7
|
|
ICALL1 DO-ID
|
|
PRINTI "Teleports trouble out of your way"
|
|
JUMP ?CND1
|
|
?CCL7: EQUAL? ACT,IO-WAND-F \?CCL9
|
|
ICALL1 DO-ID
|
|
PRINTI "Makes things turn inside-out"
|
|
JUMP ?CND1
|
|
?CCL9: EQUAL? ACT,LEV-WAND-F \?CCL11
|
|
ICALL1 DO-ID
|
|
PRINTI "Floats 'most anything that isn't nailed down"
|
|
JUMP ?CND1
|
|
?CCL11: EQUAL? ACT,DISPEL-WAND-F \?CCL13
|
|
PRINT CTHELADY
|
|
PRINTI " scowls. "
|
|
ICALL1 DO-ID
|
|
PRINTI "Neutralizes the effects of Magick"
|
|
JUMP ?CND1
|
|
?CCL13: EQUAL? ACT,HEALING-POTION-F \?CCL15
|
|
ICALL1 DO-ID
|
|
PRINTI "Just the thing in the heat of battle"
|
|
JUMP ?CND1
|
|
?CCL15: EQUAL? ACT,FORGET-POTION-F \?CCL17
|
|
ICALL1 DO-ID
|
|
PRINTI "Hmm,"" mutters "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI ". ""Tried one of those once; can't recall what it does. Oh, well"
|
|
JUMP ?CND1
|
|
?CCL17: EQUAL? ACT,DEATH-POTION-F \?CCL19
|
|
ICALL1 DO-ID
|
|
PRINTI "Don't understand why they mix these things"
|
|
JUMP ?CND1
|
|
?CCL19: EQUAL? ACT,MIGHT-POTION-F /?CTR20
|
|
EQUAL? OBJ,ROOT \?CCL21
|
|
?CTR20: ICALL1 DO-ID
|
|
PRINTI "That'll put hair on your chest"
|
|
FSET? PLAYER,FEMALE \?CND1
|
|
PRINTI "."" "
|
|
PRINT CTHELADY
|
|
PRINTI " blushes. ""Well, you know what I mean"
|
|
JUMP ?CND1
|
|
?CCL21: EQUAL? ACT,IQ-POTION-F \?CCL27
|
|
ICALL1 DO-ID
|
|
PRINTI "Four years faster than GUE Tech, and a lot cheaper"
|
|
JUMP ?CND1
|
|
?CCL27: EQUAL? FX,DO-PARTAY \?CCL29
|
|
ICALL1 DO-ID
|
|
PRINTI "Big fun at parties"
|
|
JUMP ?CND1
|
|
?CCL29: EQUAL? FX,DO-FILFRE \?CCL31
|
|
ICALL1 DO-ID
|
|
PRINTI "Essential reading"
|
|
JUMP ?CND1
|
|
?CCL31: EQUAL? FX,DO-GOTO \?CCL33
|
|
ICALL1 DO-ID
|
|
PRINTI "Just the thing for emergencies"
|
|
JUMP ?CND1
|
|
?CCL33: EQUAL? FX,DO-BLESS-ARMOR \?CCL35
|
|
ICALL1 DO-ID
|
|
PRINTI "Bestows a rich blessing upon your armor"
|
|
JUMP ?CND1
|
|
?CCL35: EQUAL? FX,DO-BLESS-WEAPON \?CCL37
|
|
ICALL1 DO-ID
|
|
PRINTI "Adds a touch of enchantment to any weapon"
|
|
JUMP ?CND1
|
|
?CCL37: EQUAL? FX,DO-RENEWAL \?CCL39
|
|
ICALL1 DO-ID
|
|
PRINTI "How refreshing"
|
|
JUMP ?CND1
|
|
?CCL39: EQUAL? FX,DO-GATE \?CCL41
|
|
ICALL1 DO-ID
|
|
PRINTI "Not as robust as Dimension Door, but serviceable"
|
|
JUMP ?CND1
|
|
?CCL41: EQUAL? OBJ,CAKE \?CCL43
|
|
PRINT CTHELADY
|
|
PRINTI " grimaces. ""Bleah. My aunt used to make those. Good for your brain, but not much else"
|
|
JUMP ?CND1
|
|
?CCL43: EQUAL? OBJ,CLOAK \?CCL45
|
|
ICALL1 DO-ID
|
|
PRINTI "Elvish, if the weave speaks true"
|
|
JUMP ?CND1
|
|
?CCL45: EQUAL? OBJ,RING \?CCL47
|
|
PRINT CTHELADY
|
|
PRINTI " smirks. "
|
|
ICALL1 DO-ID
|
|
PRINTI "Same as the Coal-Walkers of Egreth use"
|
|
JUMP ?CND1
|
|
?CCL47: EQUAL? OBJ,HELM \?CCL49
|
|
ICALL1 DO-ID
|
|
FSET OBJ,PROPER
|
|
PRINTI "A potent relic of the past 'Tis said the wearer commands the wisdom of kings, and can see the unseeable."" She shudders visibly. ""Some things are better left unseen"
|
|
JUMP ?CND1
|
|
?CCL49: EQUAL? OBJ,GOBLET \?CCL51
|
|
ZERO? GOBLET-WORD \?CND52
|
|
ICALL1 SETUP-GOBLET
|
|
?CND52: PRINT CTHELADY
|
|
PRINTI " turns pale, and lowers her voice to a barely audible whisper. ""The "
|
|
GETP OBJ,P?NAME-TABLE
|
|
ICALL2 PRINT-TABLE,STACK
|
|
PRINTI ","" she hisses"
|
|
FSET? OBJ,NEUTRALIZED /?CND54
|
|
PRINTI ", and thunder rumbles outside"
|
|
?CND54: PRINTI ". ""Beware! for its Name incurs the wrath of the Implementors"
|
|
JUMP ?CND1
|
|
?CCL51: EQUAL? OBJ,UHEMI,LHEMI \?CCL57
|
|
PRINTI """Hmm,"" mutters "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI ". ""Some great potential lies within"
|
|
JUMP ?CND1
|
|
?CCL57: EQUAL? OBJ,STONE \?CCL59
|
|
FSET? STONE,NAMED /?CND60
|
|
ICALL1 SETUP-STONE
|
|
?CND60: PRINTI """Ah! The "
|
|
GETP OBJ,P?NAME-TABLE
|
|
ICALL2 PRINT-TABLE,STACK
|
|
PRINTI "! Visions of things yet to be lie within its depths, for those with enough wit to see them"
|
|
JUMP ?CND1
|
|
?CCL59: EQUAL? OBJ,RFOOT,CLOVER,SHOE \?CCL63
|
|
PRINTI """A charm to ward off ill luck"
|
|
JUMP ?CND1
|
|
?CCL63: EQUAL? OBJ,SCABBARD \?CCL65
|
|
FSET OBJ,IDENTIFIED
|
|
PRINT CTHELADY
|
|
PRINTI "'s voice lowers to a respectful whisper. ""Behold "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI ", Blade of Entharion,"" she says. ""Though the Blade is long lost, the scabbard retains much virtue; for "
|
|
FSET? PLAYER,FEMALE \?CND66
|
|
PRINTC 115
|
|
?CND66: PRINTI "he who wears it is blessed with wondrous powers of recuperation"
|
|
JUMP ?CND1
|
|
?CCL65: EQUAL? OBJ,VIAL \?CCL69
|
|
PRINTI """Holy water,"" explains "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI " after a brief glance. ""Standard issue against vampires, wraiths, anything dead that moves"
|
|
JUMP ?CND1
|
|
?CCL69: EQUAL? OBJ,GLASS \?CCL71
|
|
PRINTI """A relic of ancient Pheebor,"" explains "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINTI ". ""Its purpose is lost in Time. Perhaps it is part of some greater Magick"
|
|
JUMP ?CND1
|
|
?CCL71: EQUAL? OBJ,ROSE \?CCL73
|
|
PRINTI """A compass rose! Just the thing for an ill wind"
|
|
JUMP ?CND1
|
|
?CCL73: EQUAL? OBJ,GURDY \?CCL75
|
|
PRINTI """A versatile instrument. Dangerous in the wrong hands"
|
|
JUMP ?CND1
|
|
?CCL75: EQUAL? OBJ,WHISTLE \?CCL77
|
|
ICALL1 DO-ID
|
|
PRINTI "Wrought by a platypus, like most nowadays"
|
|
JUMP ?CND1
|
|
?CCL77: EQUAL? OBJ,PHASE \?CCL79
|
|
PRINTI """Little more than a curiosity, at least on this Plane of existence"
|
|
JUMP ?CND1
|
|
?CCL79: EQUAL? OBJ,CHEST \?CCL81
|
|
PRINT CTHELADY
|
|
PRINTI " studies "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI " closely. ""Careful with this,"" she warns. ""The plaque on the lid is well worth reading"
|
|
JUMP ?CND1
|
|
?CCL81: EQUAL? OBJ,AMULET \?CCL83
|
|
PRINTI """A useful bit of Magick, this. "
|
|
ZERO? AMULET-STARS \?CCL86
|
|
PRINTI "Too bad it's all used up"
|
|
JUMP ?CND1
|
|
?CCL86: PRINTI "Still got some life in it, too"
|
|
JUMP ?CND1
|
|
?CCL83: EQUAL? OBJ,SPENSE,SPENSE2 \?CCL88
|
|
PRINTI """Spenseweed, of course. A wholesome treat"
|
|
JUMP ?CND1
|
|
?CCL88: EQUAL? OBJ,BURIN \?CCL90
|
|
PRINTI """Diamond-tipped, I see. Top of the line"
|
|
JUMP ?CND1
|
|
?CCL90: EQUAL? OBJ,JAR,CIRCLET \FALSE
|
|
PRINTI """A vain bit of Magick; yet not without its uses"
|
|
?CND1: FSET? OBJ,NEUTRALIZED \?CND93
|
|
PRINT STR?597
|
|
PRINTI "its Magick"
|
|
PRINT STR?647
|
|
?CND93: ICALL REVEAL-VALUE,OBJ,MCASE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT REVEAL-VALUE,OBJ,CASE,VAL,X
|
|
GETP OBJ,P?VALUE >VAL
|
|
PRINTC PER
|
|
ZERO? VAL \?CND1
|
|
PRINTR """"
|
|
?CND1: PRINTC SP
|
|
SET 'X,OFFERS
|
|
IN? OBJ,CASE /?CND3
|
|
SET 'X,USED-OFFERS
|
|
?CND3: CALL2 PICK-NEXT,X
|
|
PRINT STACK
|
|
PRINTN VAL
|
|
PRINTI " zorkmid"
|
|
EQUAL? VAL,1 /?CND5
|
|
PRINTC 115
|
|
?CND5: PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SECRET-VIRTUE,OBJ
|
|
PRINT CTHELADY
|
|
PRINTI " scrutinizes "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI " with care. ""Hmm,"" she mutters. ""There may be a virtue in this "
|
|
PRINTD OBJ
|
|
PRINTI " beyond its simple face value. Perhaps you should bring it to the "
|
|
PRINT STR?644
|
|
PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT DO-ID
|
|
FSET? IDING,IDENTIFIED /?CND1
|
|
FSET IDING,IDENTIFIED
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
?CND1: PRINTC 34
|
|
CALL2 PICK-NEXT,AH-YESSES
|
|
PRINT STACK
|
|
ICALL2 DPRINT,IDING
|
|
PRINTI ". "
|
|
RFALSE
|
|
|
|
|
|
.FUNCT ASK-OWOMAN-FOR,OBJ,X,L
|
|
ICALL2 SEE-CHARACTER,OWOMAN
|
|
LOC OBJ >L
|
|
EQUAL? L,OWOMAN /?CND1
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CND3
|
|
PRINTI """I see "
|
|
FSET? OBJ,PLURAL \?CCL7
|
|
PRINTB W?SOME
|
|
JUMP ?CND5
|
|
?CCL7: PRINTB W?ONE
|
|
?CND5: PRINTI " there "
|
|
ICALL2 SAY-WHERE,L
|
|
PRINTI ","" smiles "
|
|
ICALL2 THE-PRINT,OWOMAN
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND3: PRINTI """I'm afraid I don't have "
|
|
ICALL2 PRINTA,OBJ
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CND1: ICALL2 NOT-SO-FAST,OWOMAN
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOT-SO-FAST,OBJ
|
|
PRINTI """Not so fast!"" laughs "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTR ", drawing away from you."
|
|
|
|
|
|
.FUNCT GIVE-TO-OWOMAN,OBJ,X
|
|
ICALL2 SEE-CHARACTER,OWOMAN
|
|
CALL GIVING-LOOT?,OBJ,OWOMAN
|
|
ZERO? STACK \TRUE
|
|
GET MAGIC-ITEMS,0 >X
|
|
INTBL? OBJ,MAGIC-ITEMS+2,X >X \?CND3
|
|
EQUAL? HERE,IN-MAGICK /?CND5
|
|
ICALL CANT-USE-HERE,OBJ,STR?644
|
|
RTRUE
|
|
?CND5: ICALL2 TRADE-FOR-LOOT,OBJ
|
|
RTRUE
|
|
?CND3: GET ARMOR-ITEMS,0 >X
|
|
INTBL? OBJ,ARMOR-ITEMS+2,X >X \?CND7
|
|
EQUAL? HERE,IN-BOUTIQUE /?CND9
|
|
ICALL CANT-USE-HERE,OBJ,STR?646
|
|
RTRUE
|
|
?CND9: ICALL2 TRADE-FOR-LOOT,OBJ
|
|
RTRUE
|
|
?CND7: GET WEAPON-ITEMS,0 >X
|
|
INTBL? OBJ,WEAPON-ITEMS+2,X >X \?CND11
|
|
EQUAL? HERE,IN-WEAPON /?CND13
|
|
ICALL CANT-USE-HERE,OBJ,STR?645
|
|
RTRUE
|
|
?CND13: ICALL2 TRADE-FOR-LOOT,OBJ
|
|
RTRUE
|
|
?CND11: ICALL2 TRADE-FOR-LOOT,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CANT-USE-HERE,OBJ,STR
|
|
PRINT CTHELADY
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTI ". ""Can't use this here,"" she mutters. ""Maybe the "
|
|
PRINT STR
|
|
PRINTR " would be interested."""
|
|
|
|
|
|
.FUNCT ORATOR-F,CONTEXT
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 PRINTCA,ORATOR
|
|
PRINTI " stands nearby, addressing the crowd."
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-WINNER /FALSE
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? \FALSE
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
ICALL1 CTHE-PRINT
|
|
PRINTR " looks and acts very important."
|
|
|
|
|
|
.FUNCT DESCRIBE-PRINCE,OBJ
|
|
FSET? OBJ,SLEEPING \?CND1
|
|
PRINTI "dead "
|
|
?CND1: PRINTD PRINCE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT PRINCE-F,CONTEXT,OBJ,X
|
|
ZERO? CONTEXT /?CCL3
|
|
EQUAL? CONTEXT,M-CONT \FALSE
|
|
SET 'OBJ,PRSO
|
|
ZERO? NOW-PRSI? /?CND6
|
|
SET 'OBJ,PRSI
|
|
?CND6: ZERO? OBJ /FALSE
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
PRINT CANT
|
|
PRINTI "reach "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINT AT-MOMENT
|
|
RTRUE
|
|
?CCL3: ZERO? NOW-PRSI? /?CCL12
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \FALSE
|
|
ICALL1 BATTLE-MISS
|
|
RTRUE
|
|
?CCL12: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL16
|
|
ICALL1 CONTEMPT
|
|
RETURN 2
|
|
?CCL16: EQUAL? PRSA,V?EXAMINE,V?LOOK-ON \?CCL20
|
|
PRINTI "He's wearing "
|
|
ICALL2 PRINTA,HELM
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL20: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL1 ZING
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CONTEMPT
|
|
ICALL1 PCLEAR
|
|
ICALL1 CTHE-PRINT
|
|
PRINTR " silences you with a gesture of contempt."
|
|
|
|
|
|
.FUNCT DEAD-PRINCE-F,CONTEXT,X
|
|
ZERO? CONTEXT \FALSE
|
|
CALL2 NOUN-USED?,W?HEAD
|
|
ZERO? STACK /?CND1
|
|
IN? HORSE,TRENCH /?CND5
|
|
ICALL1 SAY-SLAY
|
|
RETURN 2
|
|
?CND5: PRINT CANT
|
|
PRINTI "see it anymore."
|
|
CRLF
|
|
RETURN 2
|
|
?CND1: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \?CCL13
|
|
PRINTR "Ick! He's all bloody."
|
|
?CCL13: ZERO? NOW-PRSI? \FALSE
|
|
INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL17
|
|
ICALL1 NOT-LIKELY
|
|
PRINT STR?509
|
|
RTRUE
|
|
?CCL17: EQUAL? PRSA,V?EXAMINE,V?LOOK-ON,V?SEARCH \FALSE
|
|
PRINTR "His head is missing. Yuk."
|
|
|
|
|
|
.FUNCT SAY-SLAY,X
|
|
PRINTI "As you "
|
|
INTBL? PRSA,SEEVERBS,NSVERBS >X \?CCL3
|
|
PRINTI "peer into "
|
|
JUMP ?CND1
|
|
?CCL3: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \?CCL5
|
|
PRINTI "reach towards "
|
|
JUMP ?CND1
|
|
?CCL5: PRINTI "approach "
|
|
?CND1: ICALL2 THE-PRINT,TRENCH
|
|
PRINTI ", a "
|
|
ICALL1 SLAY-HORSE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT KNIGHT-F,CONTEXT,X
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL5
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \FALSE
|
|
ICALL1 BATTLE-MISS
|
|
RTRUE
|
|
?CCL5: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL9
|
|
ICALL1 CONTEMPT
|
|
RETURN 2
|
|
?CCL9: EQUAL? PRSA,V?EXAMINE \?CCL13
|
|
PRINTR "His regal bearing does not disguise his youth."
|
|
?CCL13: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL1 ZING
|
|
RTRUE
|
|
|
|
|
|
.FUNCT HUNTERS-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
PRINTI "Hunters are foraging under the distant trees."
|
|
RTRUE
|
|
?CCL3: ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL7
|
|
EQUAL? PRSA,V?SHOW,V?GIVE,V?FEED \FALSE
|
|
ICALL1 DISTANT-HUNTERS
|
|
RTRUE
|
|
?CCL7: EQUAL? PRSA,V?YELL,V?WAVE-AT \?CCL11
|
|
PRINTI "A few of the distant "
|
|
PRINTD PRSO
|
|
PRINTR " glance up at you, then return to work."
|
|
?CCL11: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL13
|
|
ICALL1 PCLEAR
|
|
ICALL1 DISTANT-HUNTERS
|
|
RETURN 2
|
|
?CCL13: EQUAL? PRSA,V?EXAMINE \?CCL17
|
|
ICALL1 CTHE-PRINT
|
|
PRINTR " trudge slowly among the oaks, peering at the ground."
|
|
?CCL17: EQUAL? PRSA,V?WALK-TO,V?FOLLOW \?CCL19
|
|
ICALL1 CTHE-PRINT
|
|
PRINTI " are running around in every "
|
|
PRINTD INTDIR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CCL19: EQUAL? PRSA,V?LISTEN,V?SMELL /?CTR20
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
?CTR20: ICALL1 CANT-FROM-HERE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT DISTANT-HUNTERS
|
|
PRINTI "None of "
|
|
ICALL2 THE-PRINT,HUNTERS
|
|
PRINTR " respond. They're too far away to hear you."
|
|
|
|
|
|
.FUNCT GENERIC-HUNTERS-F,TBL,LEN
|
|
RETURN HUNTER
|
|
|
|
|
|
.FUNCT HUNTER-F,CONTEXT,X
|
|
ZERO? CONTEXT /?CCL3
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL6
|
|
ICALL2 PRINTCA,HUNTER
|
|
PRINTI " is standing nearby."
|
|
RTRUE
|
|
?CCL6: EQUAL? CONTEXT,M-CONT \FALSE
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL1 HANDS-OFF-HUNTER
|
|
RTRUE
|
|
?CCL3: ZERO? NOW-PRSI? /?CCL11
|
|
EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL14
|
|
ICALL2 GIVE-TO-HUNTER,PRSO
|
|
RTRUE
|
|
?CCL14: EQUAL? PRSA,V?SHOW \FALSE
|
|
ICALL2 SHOW-TO-HUNTER,PRSO
|
|
RTRUE
|
|
?CCL11: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL17
|
|
ICALL1 PCLEAR
|
|
ICALL2 CTHE-PRINT,HUNTER
|
|
PRINTI " frowns. ""Wha' say ye? Ye got a funny way o' talkin', "
|
|
FSET? PLAYER,FEMALE \?CND18
|
|
PRINTI "ma'am."""
|
|
CRLF
|
|
RETURN 2
|
|
?CND18: PRINTI "mister."""
|
|
CRLF
|
|
RETURN 2
|
|
?CCL17: EQUAL? PRSA,V?EXAMINE,V?LOOK-ON \?CCL25
|
|
ICALL1 CTHE-PRINT
|
|
PRINTR " is a lad of twelve or thirteen years, dressed in peasant garb. A burlap sack is slung over his narrow shoulders."
|
|
?CCL25: EQUAL? PRSA,V?KISS,V?RAPE,V?TOUCH \FALSE
|
|
ICALL1 HANDS-OFF-HUNTER
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GIVE-TO-HUNTER,OBJ
|
|
CALL GIVING-LOOT?,OBJ,HUNTER
|
|
ZERO? STACK \TRUE
|
|
PRINTI """No, thanks,"" says "
|
|
ICALL2 THE-PRINT,HUNTER
|
|
PRINTR ", shaking his head."""
|
|
|
|
|
|
.FUNCT SHOW-TO-HUNTER,OBJ
|
|
ICALL2 CTHE-PRINT,HUNTER
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
EQUAL? OBJ,MINX \?CND1
|
|
PRINT PERIOD
|
|
ICALL1 HUNTER-SEES-MINX
|
|
RTRUE
|
|
?CND1: PRINT STR?625
|
|
RTRUE
|
|
|
|
|
|
.FUNCT HANDS-OFF-HUNTER
|
|
PRINTI """Keep to yerself, "
|
|
ICALL1 MAAM-OR-MISTER
|
|
PRINTI "!"" cries "
|
|
ICALL2 THE-PRINT,HUNTER
|
|
PRINTR ", drawing quickly away."
|
|
|
|
|
|
.FUNCT MAAM-OR-MISTER
|
|
FSET? PLAYER,FEMALE \?CND1
|
|
PRINTI "ma'am"
|
|
RTRUE
|
|
?CND1: PRINTI "mister"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT DESCRIBE-MINX,OBJ
|
|
FSET? OBJ,NAMED \?CND1
|
|
GETP OBJ,P?NAME-TABLE
|
|
ICALL2 PRINT-TABLE,STACK
|
|
ZERO? INV-PRINTING? /TRUE
|
|
PRINT STHE
|
|
?CND1: PRINTD OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MINX-F,CONTEXT,X
|
|
SET 'P-IT-OBJECT,MINX
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
FSET MINX,SEEN
|
|
ICALL2 PRINTCA,MINX
|
|
CALL2 SEE-ANYTHING-IN?,MINX
|
|
ZERO? STACK /?CND4
|
|
PRINT WITH
|
|
ICALL2 CONTENTS,MINX
|
|
PRINTI " in its mouth"
|
|
?CND4: PRINTI " is playing at your feet."
|
|
RTRUE
|
|
?CCL3: ZERO? CONTEXT \FALSE
|
|
IN? MINX,OAK \?CCL9
|
|
ZERO? HSCRIPT /?CCL9
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \?CCL9
|
|
PRINTI "The thing behind "
|
|
ICALL2 THE-PRINT,OAK
|
|
PRINTR " shrinks out of reach."
|
|
?CCL9: ZERO? NOW-PRSI? /?CCL14
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL17
|
|
ICALL2 HARMLESS,PRSI
|
|
RTRUE
|
|
?CCL17: EQUAL? PRSA,V?SHOW \?CCL19
|
|
ICALL1 SHOW-TO-MINX
|
|
RTRUE
|
|
?CCL19: EQUAL? PRSA,V?GIVE,V?FEED \FALSE
|
|
ICALL1 GIVE-TO-MINX
|
|
RTRUE
|
|
?CCL14: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO \?CCL22
|
|
ICALL1 REFER-TO-PACKAGE
|
|
RETURN 2
|
|
?CCL22: EQUAL? PRSA,V?TELL,V?ASK-ABOUT,V?ASK-FOR /?CTR25
|
|
EQUAL? PRSA,V?TELL-ABOUT \?CCL26
|
|
?CTR25: ICALL1 PCLEAR
|
|
ICALL1 CTHE-PRINT
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL31
|
|
PRINTI " looks at you incomprehendingly"
|
|
JUMP ?CND29
|
|
?CCL31: PRINTI " gives you a blank look"
|
|
?CND29: PRINTI ". ""Minx?"""
|
|
CRLF
|
|
RETURN 2
|
|
?CCL26: EQUAL? PRSA,V?TOUCH \?CCL35
|
|
FSET MINX,SEEN
|
|
ICALL1 CTHE-PRINT
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CCL38
|
|
PRINTI " purrs"
|
|
JUMP ?CND36
|
|
?CCL38: PRINTI " thumps her tail"
|
|
?CND36: PRINTR " with pleasure. ""Minx."""
|
|
?CCL35: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
ICALL1 HARMLESS
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GIVE-TO-MINX,OBJ
|
|
ASSIGNED? 'OBJ /?CND1
|
|
SET 'OBJ,PRSO
|
|
?CND1: FSET MINX,SEEN
|
|
EQUAL? OBJ,TRUFFLE \?CND3
|
|
ICALL1 MINX-EATS-TRUFFLE
|
|
RTRUE
|
|
?CND3: ICALL2 WRINKLES,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT WRINKLES,OBJ
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTI " sniffs "
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTR " and wrinkles her nose."
|
|
|
|
|
|
.FUNCT SHOW-TO-MINX,OBJ
|
|
ASSIGNED? 'OBJ /?CND1
|
|
SET 'OBJ,PRSO
|
|
?CND1: FSET MINX,SEEN
|
|
EQUAL? OBJ,TRUFFLE \?CND3
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTR " eagerly thumps her tail. ""Minx!"""
|
|
?CND3: ICALL2 WRINKLES,OBJ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MINX-EATS-TRUFFLE
|
|
BOR NEW-DBOX,SHOWING-ALL >NEW-DBOX
|
|
REMOVE TRUFFLE
|
|
FSET MINX,SEEN
|
|
SET 'P-IT-OBJECT,MINX
|
|
SET 'P-HER-OBJECT,MINX
|
|
ICALL2 CTHE-PRINT,MINX
|
|
FSET? TRUFFLE,SEEN /?CND1
|
|
FSET TRUFFLE,SEEN
|
|
PRINTI " looks up at you as she sniffs the "
|
|
PRINTB W?TRUFFLE
|
|
PRINTI ". ""Minx?"" she mews, thumping her tail imploringly. When you don't object, she"
|
|
?CND1: PRINTR " pops the delicacy into her mouth, licks her paws clean and purrs with contentment."
|
|
|
|
|
|
.FUNCT KILL-MINX
|
|
FCLEAR MINX,LIVING
|
|
ICALL2 DEQUEUE,I-MINX
|
|
PUTP MINX,P?ACTION,DEAD-MINX-F
|
|
ICALL REPLACE-ADJ?,MINX,W?AWAKE,W?DEAD
|
|
ICALL REPLACE-ADJ?,MINX,W?SLEEPING,W?DEAD
|
|
RFALSE
|
|
|
|
|
|
.FUNCT DEAD-MINX-F,CONTEXT,X
|
|
ZERO? CONTEXT /?CCL3
|
|
EQUAL? CONTEXT,M-OBJDESC \FALSE
|
|
ICALL2 PRINTCA,MINX
|
|
PRINTI " lies nearby."
|
|
RTRUE
|
|
?CCL3: ZERO? NOW-PRSI? \FALSE
|
|
INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL9
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINT STR?626
|
|
RETURN 2
|
|
?CCL9: EQUAL? PRSA,V?EXAMINE \?CCL13
|
|
ICALL2 CTHE-PRINT,MINX
|
|
PRINTR " is still as death."
|
|
?CCL13: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
PRINTR "You're lucky your compassion didn't go down."
|
|
|
|
|
|
.FUNCT MAYOR-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " of "
|
|
PRINTD FROON
|
|
PRINT SIS
|
|
FIRST? MAYOR >X \?CCL6
|
|
PRINTI "standing next to you, holding "
|
|
ICALL2 CONTENTS,MAYOR
|
|
JUMP ?CND4
|
|
?CCL6: PRINTI "grovelling at your feet"
|
|
?CND4: PRINTI ". A joyous "
|
|
PRINTD FCROWD
|
|
PRINTI " is gathered around him."
|
|
RTRUE
|
|
?CCL3: CALL2 INSULTED?,MAYOR
|
|
ZERO? STACK /?CCL8
|
|
RETURN 2
|
|
?CCL8: EQUAL? CONTEXT,M-WINNER \?CCL12
|
|
EQUAL? PRSA,V?HELLO \?CCL15
|
|
EQUAL? PRSO,ROOMS,MAYOR \?CCL15
|
|
ICALL1 GREET-MAYOR
|
|
RTRUE
|
|
?CCL15: EQUAL? PRSA,V?GOODBYE \?CCL19
|
|
EQUAL? PRSO,ROOMS,MAYOR \?CCL19
|
|
ICALL1 BYE-MAYOR
|
|
RTRUE
|
|
?CCL19: EQUAL? PRSA,V?TELL-ABOUT,V?SSHOW \?CCL23
|
|
EQUAL? PRSO,ME \?CCL23
|
|
ICALL2 ASK-MAYOR-ABOUT,PRSI
|
|
RETURN 2
|
|
?CCL23: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO /?CTR28
|
|
EQUAL? PRSA,V?WHERE /?CTR28
|
|
EQUAL? PRSA,V?SHOW \?CCL29
|
|
EQUAL? PRSI,ME \?CCL29
|
|
?CTR28: ICALL2 ASK-MAYOR-ABOUT,PRSO
|
|
RETURN 2
|
|
?CCL29: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL38
|
|
EQUAL? PRSI,ME \?CCL38
|
|
ICALL2 ASK-MAYOR-FOR,PRSO
|
|
RETURN 2
|
|
?CCL38: EQUAL? PRSA,V?SGIVE,V?SGET-FOR \?CND13
|
|
EQUAL? PRSO,ME \?CND13
|
|
ICALL2 ASK-MAYOR-FOR,PRSI
|
|
RETURN 2
|
|
?CND13: ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " sighs."
|
|
CRLF
|
|
RETURN 2
|
|
?CCL12: ZERO? NOW-PRSI? /?CCL51
|
|
EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL54
|
|
ICALL2 GIVE-TO-MAYOR,PRSO
|
|
RTRUE
|
|
?CCL54: EQUAL? PRSA,V?SHOW \FALSE
|
|
ICALL2 SHOW-TO-MAYOR,PRSO
|
|
RTRUE
|
|
?CCL51: EQUAL? PRSA,V?HELLO,V?WAVE-AT \?CCL57
|
|
ICALL1 GREET-MAYOR
|
|
RTRUE
|
|
?CCL57: EQUAL? PRSA,V?GOODBYE \?CCL59
|
|
ICALL1 BYE-MAYOR
|
|
RTRUE
|
|
?CCL59: EQUAL? PRSA,V?ASK-FOR \?CCL61
|
|
ICALL2 ASK-MAYOR-FOR,PRSI
|
|
RTRUE
|
|
?CCL61: EQUAL? PRSA,V?ASK-ABOUT \?CCL63
|
|
ICALL2 ASK-MAYOR-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL63: EQUAL? PRSA,V?TELL-ABOUT \FALSE
|
|
ICALL2 SHOW-TO-MAYOR,PRSI
|
|
RTRUE
|
|
|
|
|
|
.FUNCT BYE-MAYOR
|
|
PRINTI """Wait! Don't go yet,"" pleads "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINTR ", holding you back."
|
|
|
|
|
|
.FUNCT GREET-MAYOR
|
|
PRINTR """Greetings, O noble one."""
|
|
|
|
|
|
.FUNCT ASK-MAYOR-ABOUT,OBJ,TBL,LEN,X
|
|
ICALL2 SEE-CHARACTER,MAYOR
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK \?CND1
|
|
ICALL2 PERPLEXED,MAYOR
|
|
PRINTI "I'm uncertain as to"
|
|
ICALL2 WHO-WHAT,OBJ
|
|
PRINTR "you are referring."""
|
|
?CND1: GET MAYOR-TABLE,0 >LEN
|
|
?PRG3: GET MAYOR-TABLE,LEN >TBL
|
|
GET TBL,0 >X
|
|
GET TBL,0
|
|
EQUAL? STACK,OBJ \?CCL7
|
|
PRINTC 34
|
|
GET TBL,1
|
|
PRINT STACK
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CCL7: DLESS? 'LEN,1 \?PRG3
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
PRINTI " looks at "
|
|
ICALL2 THE-PRINT,GROUND
|
|
PRINTI " sheepishly"
|
|
ICALL1 ALAS
|
|
PRINTI "I possess but little knowledge of "
|
|
ICALL2 PRONOUN,OBJ
|
|
PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ALAS
|
|
PRINTI ". ""Alas, "
|
|
ICALL1 HONORED-ONE
|
|
PRINTI ". "
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-MAYOR-FOR,OBJ,X,L
|
|
LOC OBJ >L
|
|
EQUAL? L,MAYOR /?CCL3
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK /?CND4
|
|
PRINTI """I notice "
|
|
FSET? OBJ,PLURAL \?CCL8
|
|
PRINTB W?SOME
|
|
JUMP ?CND6
|
|
?CCL8: PRINTB W?ONE
|
|
?CND6: PRINTI " there "
|
|
ICALL2 SAY-WHERE,L
|
|
PRINTI ","" remarks "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
PRINT PERIOD
|
|
RTRUE
|
|
?CND4: ICALL1 MAYOR-SORRY
|
|
PRINTR "have none to offer at the moment."""
|
|
?CCL3: EQUAL? OBJ,KEY1,KEY2,KEY3 \?CND1
|
|
ICALL2 AWARD-KEY,OBJ
|
|
RTRUE
|
|
?CND1: ICALL1 MAYOR-SORRY
|
|
PRINTI "cannot give you "
|
|
ICALL2 PRONOUN,OBJ
|
|
PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MAYOR-SORRY
|
|
PRINTI """My apologies, "
|
|
ICALL1 HONORED-ONE
|
|
PRINTI ","" mumbles "
|
|
ICALL2 THE-PRINT,MAYOR
|
|
RANDOM 100
|
|
LESS? 50,STACK /?CND1
|
|
PRINTI ", hanging his head"
|
|
?CND1: PRINTI ". ""I "
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GIVE-TO-MAYOR,OBJ
|
|
CALL GIVING-LOOT?,OBJ,MAYOR
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NO-THANKS,MAYOR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT HONORED-ONE
|
|
PRINTI "Honored "
|
|
FSET? PLAYER,FEMALE \?CND1
|
|
PRINTI "Ma'am"
|
|
RTRUE
|
|
?CND1: PRINTI "Sir"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SHOW-TO-MAYOR,OBJ
|
|
ICALL2 CTHE-PRINT,MAYOR
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK \?CND1
|
|
PRINTR " looks confused. ""What do you mean?"""
|
|
?CND1: PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTR ", but shows only polite interest."
|
|
|
|
|
|
.FUNCT LADY-F,CONTEXT
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 PRINTCA,LADY
|
|
PRINTI " is standing near "
|
|
ICALL2 THE-PRINT,FARMHOUSE
|
|
PRINTC PER
|
|
RTRUE
|
|
?CCL3: IN? FCROWD,HERE \?CCL5
|
|
ICALL2 CTHE-PRINT,LADY
|
|
PRINTI " is lost in "
|
|
ICALL2 THE-PRINT,FCROWD
|
|
PRINT PERIOD
|
|
RETURN 2
|
|
?CCL5: CALL2 INSULTED?,LADY
|
|
ZERO? STACK /?CCL9
|
|
RETURN 2
|
|
?CCL9: EQUAL? CONTEXT,M-WINNER \?CCL13
|
|
EQUAL? PRSA,V?HELLO \?CND14
|
|
EQUAL? PRSO,ROOMS,LADY \?CND14
|
|
ICALL1 GREET-LADY
|
|
RETURN 2
|
|
?CND14: ICALL1 SHY-LADY
|
|
RETURN 2
|
|
?CCL13: ZERO? NOW-PRSI? /?CCL23
|
|
EQUAL? PRSA,V?GIVE,V?GET-FOR,V?SHOW \FALSE
|
|
ICALL2 SHOW-TO-LADY,PRSO
|
|
RTRUE
|
|
?CCL23: EQUAL? PRSA,V?TELL /FALSE
|
|
EQUAL? PRSA,V?ASK-FOR,V?ASK-ABOUT \?CCL29
|
|
ICALL1 SHY-LADY
|
|
RTRUE
|
|
?CCL29: EQUAL? PRSA,V?TELL-ABOUT \?CCL31
|
|
ICALL2 SHOW-TO-LADY,PRSI
|
|
RTRUE
|
|
?CCL31: EQUAL? PRSA,V?HELLO,V?WAVE-AT \?CCL33
|
|
ICALL1 GREET-LADY
|
|
RTRUE
|
|
?CCL33: EQUAL? PRSA,V?EXAMINE \FALSE
|
|
PRINTR "Her bright, colorful garb blends in with the flowers."
|
|
|
|
|
|
.FUNCT SHOW-TO-LADY,OBJ
|
|
CALL2 VISIBLE?,OBJ
|
|
ZERO? STACK \?CND1
|
|
ICALL1 SHY-LADY
|
|
RTRUE
|
|
?CND1: ICALL2 CTHE-PRINT,LADY
|
|
PRINT GLANCES-AT
|
|
ICALL2 THE-PRINT,OBJ
|
|
PRINTR ", blushes, and says nothing."
|
|
|
|
|
|
.FUNCT SHY-LADY
|
|
ICALL2 CTHE-PRINT,LADY
|
|
PRINTR " blushes. She's too shy to respond."
|
|
|
|
|
|
.FUNCT GREET-LADY
|
|
ICALL2 CTHE-PRINT,LADY
|
|
PRINTR " nods at you shyly."
|
|
|
|
|
|
.FUNCT FCROWD-F,CONTEXT
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
PRINTI "A joyous "
|
|
PRINTD FCROWD
|
|
PRINTI " of little people is standing all around you."
|
|
RTRUE
|
|
?CCL3: CALL2 INSULTED?,FCROWD
|
|
ZERO? STACK /?CCL5
|
|
RETURN 2
|
|
?CCL5: EQUAL? CONTEXT,M-WINNER \?CCL9
|
|
EQUAL? PRSA,V?HELLO \?CND10
|
|
EQUAL? PRSO,ROOMS,FCROWD \?CND10
|
|
ICALL1 CROWD-GREET
|
|
RETURN 2
|
|
?CND10: ICALL1 LOUD-CROWD
|
|
RETURN 2
|
|
?CCL9: ZERO? NOW-PRSI? /?CCL19
|
|
EQUAL? PRSA,V?GIVE,V?GET-FOR,V?SHOW \FALSE
|
|
PRINTI "No one in "
|
|
ICALL1 THEI-PRINT
|
|
PRINTR " shows any interest."
|
|
?CCL19: EQUAL? PRSA,V?TELL /FALSE
|
|
EQUAL? PRSA,V?HELLO,V?WAVE-AT \?CCL25
|
|
ICALL1 CROWD-GREET
|
|
RTRUE
|
|
?CCL25: EQUAL? PRSA,V?ASK-FOR,V?ASK-ABOUT,V?TELL-ABOUT \FALSE
|
|
ICALL1 LOUD-CROWD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CROWD-GREET
|
|
ICALL2 CTHE-PRINT,FCROWD
|
|
PRINTR " waves and cheers."
|
|
|
|
|
|
.FUNCT LOUD-CROWD
|
|
ICALL2 CTHE-PRINT,FCROWD
|
|
PRINTR " is cheering too loudly to hear you."
|
|
|
|
|
|
.FUNCT INSULTED?,OBJ
|
|
CALL NOUN-USED?,W?MUNCHKIN,W?MUNCHKINS
|
|
ZERO? STACK \?CCL2
|
|
CALL2 ADJ-USED?,W?MUNCHKIN
|
|
ZERO? STACK /FALSE
|
|
?CCL2: ICALL2 CTHE-PRINT,OBJ
|
|
PRINTI " covers "
|
|
ICALL2 HAND-PRONOUN,OBJ
|
|
PRINTI " ears with "
|
|
ICALL2 HAND-PRONOUN,OBJ
|
|
PRINTI " hands. ""Don't call "
|
|
EQUAL? OBJ,FCROWD \?CCL7
|
|
PRINTB W?US
|
|
JUMP ?CND5
|
|
?CCL7: PRINTB W?ME
|
|
?CND5: PRINTR " that!"""
|
|
|
|
|
|
.FUNCT HAND-PRONOUN,OBJ
|
|
EQUAL? OBJ,FCROWD \?CCL3
|
|
PRINTI "their"
|
|
RTRUE
|
|
?CCL3: EQUAL? OBJ,MAYOR \?CND1
|
|
PRINTI "his"
|
|
RTRUE
|
|
?CND1: PRINTI "her"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GENERIC-MUNCHKIN-F,TBL,LEN
|
|
ASSIGNED? 'LEN /?CND1
|
|
GET TBL,0 >LEN
|
|
?CND1: IN? MAYOR,HERE /?CCL4
|
|
RETURN FCROWD
|
|
?CCL4: RETURN MAYOR
|
|
|
|
|
|
.FUNCT IMPS-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
PRINTI "A group of Implementors is seated around a food-laden table"
|
|
IN? COCO,IMPS \?CCL6
|
|
PRINTI ", playing catch with a coconut."
|
|
RTRUE
|
|
?CCL6: IN? GOBLET,IMPS \?CND4
|
|
PRINTI ". One of them is holding out a "
|
|
PRINT STR?611
|
|
RTRUE
|
|
?CND4: PRINTI ", glaring at you angrily."
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-CONT \?CCL9
|
|
EQUAL? GOBLET,PRSO,PRSI /FALSE
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL2 CTHE-PRINT,IMPS
|
|
PRINTR " won't let you near."
|
|
?CCL9: ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? \FALSE
|
|
INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL19
|
|
ICALL1 PCLEAR
|
|
PRINTI """I think I just heard something insignificant,"" remarks an Implementor"
|
|
PRINT PTAB
|
|
PRINTI """How dull,"" replies another, stifling a yawn."
|
|
CRLF
|
|
RETURN 2
|
|
?CCL19: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO /?CTR22
|
|
EQUAL? PRSA,V?WHERE \FALSE
|
|
?CTR22: ICALL1 REFER-TO-PACKAGE
|
|
RETURN 2
|
|
|
|
|
|
.FUNCT CONGREG-F,CONTEXT
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? \FALSE
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
PRINTR "Their heads are bowed in fervent prayer."
|
|
|
|
|
|
.FUNCT CLERIC-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTI " is here, surrounded by a grateful crowd of villagers. He's holding "
|
|
ICALL2 CONTENTS,CLERIC
|
|
PRINTC PER
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-CONT \?CCL5
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL2 NOT-SO-FAST,CLERIC
|
|
RTRUE
|
|
?CCL5: EQUAL? CONTEXT,M-WINNER \?CCL9
|
|
EQUAL? PRSA,V?HELLO \?CCL12
|
|
EQUAL? PRSO,ROOMS,CLERIC \?CCL12
|
|
ICALL1 GREET-CLERIC
|
|
RETURN 2
|
|
?CCL12: EQUAL? PRSA,V?TELL-ABOUT,V?SSHOW \?CCL18
|
|
EQUAL? PRSO,ME \?CCL18
|
|
ICALL2 ASK-CLERIC-ABOUT,PRSI
|
|
RETURN 2
|
|
?CCL18: EQUAL? PRSA,V?EXAMINE,V?WHAT,V?WHO /?CTR23
|
|
EQUAL? PRSA,V?WHERE /?CTR23
|
|
EQUAL? PRSA,V?SHOW \?CCL24
|
|
EQUAL? PRSI,ME \?CCL24
|
|
?CTR23: ICALL2 ASK-CLERIC-ABOUT,PRSO
|
|
RETURN 2
|
|
?CCL24: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL33
|
|
EQUAL? PRSI,ME \?CCL33
|
|
ICALL2 ASK-CLERIC-FOR,PRSO
|
|
RETURN 2
|
|
?CCL33: EQUAL? PRSA,V?SGIVE,V?SGET-FOR \?CND10
|
|
EQUAL? PRSO,ME \?CND10
|
|
ICALL2 ASK-CLERIC-FOR,PRSI
|
|
RETURN 2
|
|
?CND10: PRINTI """Your accent is strange. I don't understand."""
|
|
CRLF
|
|
RETURN 2
|
|
?CCL9: ZERO? NOW-PRSI? /?CCL46
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL49
|
|
ICALL2 HARMLESS,PRSI
|
|
RTRUE
|
|
?CCL49: EQUAL? PRSA,V?GIVE,V?GET-FOR \?CCL51
|
|
ICALL2 GIVE-TO-CLERIC,PRSO
|
|
RTRUE
|
|
?CCL51: EQUAL? PRSA,V?SHOW \FALSE
|
|
ICALL DO-GLANCE,CLERIC,PRSO
|
|
RTRUE
|
|
?CCL46: EQUAL? PRSA,V?TELL \?CCL54
|
|
ZERO? P-CONT \FALSE
|
|
ICALL1 NO-RESPONSE
|
|
RTRUE
|
|
?CCL54: EQUAL? PRSA,V?EXAMINE \?CCL58
|
|
PRINTI "He"
|
|
CALL1 SEE-ANYTHING-IN?
|
|
ZERO? STACK /?CND59
|
|
PRINTI "'s holding "
|
|
ICALL1 CONTENTS
|
|
PRINTI ", and"
|
|
?CND59: PRINTR " looks as if he hasn't slept for days."
|
|
?CCL58: EQUAL? PRSA,V?ASK-FOR \?CCL62
|
|
ICALL2 ASK-CLERIC-FOR,PRSI
|
|
RTRUE
|
|
?CCL62: EQUAL? PRSA,V?ASK-ABOUT \?CCL64
|
|
ICALL2 ASK-CLERIC-ABOUT,PRSI
|
|
RTRUE
|
|
?CCL64: EQUAL? PRSA,V?TELL-ABOUT \?CCL66
|
|
ICALL DO-GLANCE,CLERIC,PRSI
|
|
RTRUE
|
|
?CCL66: EQUAL? PRSA,V?HELLO,V?WAVE-AT \?CCL68
|
|
ICALL1 GREET-CLERIC
|
|
RTRUE
|
|
?CCL68: INTBL? PRSA,HURTVERBS,NHVERBS >X \FALSE
|
|
ICALL1 HARMLESS
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GREET-CLERIC
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTR " bows deeply."
|
|
|
|
|
|
.FUNCT ASK-CLERIC-ABOUT,OBJ,TBL,LEN,X
|
|
CALL WHAT-TALK?,CLERIC,OBJ
|
|
ZERO? STACK \TRUE
|
|
GET CLERIC-TABLE,0 >LEN
|
|
?PRG3: GET CLERIC-TABLE,LEN >TBL
|
|
GET TBL,0 >X
|
|
GET TBL,0
|
|
EQUAL? STACK,OBJ \?CCL7
|
|
PRINTC 34
|
|
GET TBL,1
|
|
PRINT STACK
|
|
PRINT PERQ
|
|
RTRUE
|
|
?CCL7: DLESS? 'LEN,1 \?PRG3
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTI " shrugs. ""I claim little knowledge of "
|
|
ICALL2 PRONOUN,OBJ
|
|
PRINT PERQ
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ASK-CLERIC-FOR,OBJ
|
|
FSET CLERIC,SEEN
|
|
EQUAL? OBJ,RELIQUARY \?CND1
|
|
IN? OBJ,CLERIC \?CND1
|
|
ICALL1 GET-RELIQUARY
|
|
RTRUE
|
|
?CND1: ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTR " searches the pockets of his robes. ""Alas. I have none to offer."""
|
|
|
|
|
|
.FUNCT GET-RELIQUARY
|
|
ICALL1 EXIT-CLERIC
|
|
MOVE RELIQUARY,PLAYER
|
|
ICALL2 CTHE-PRINT,CLERIC
|
|
PRINTI " grudgingly surrenders "
|
|
ICALL2 THE-PRINT,RELIQUARY
|
|
PRINTI " and"
|
|
PRINT STR?501
|
|
PRINTR "crowd, which soon wanders away."
|
|
|
|
|
|
.FUNCT GIVE-TO-CLERIC,OBJ
|
|
FSET CLERIC,SEEN
|
|
CALL GIVING-LOOT?,OBJ,CLERIC
|
|
ZERO? STACK \TRUE
|
|
ICALL2 NO-THANKS,CLERIC
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MISSING-F,OBJ
|
|
SET 'OBJ,PRSO
|
|
ZERO? PRSI /?CND1
|
|
ZERO? NOW-PRSI? /?CND1
|
|
SET 'OBJ,PRSI
|
|
?CND1: ICALL1 PCLEAR
|
|
PRINTI "Alas. "
|
|
ICALL2 CTHE-PRINT,OBJ
|
|
PRINTI " isn't here"
|
|
PRINT AT-MOMENT
|
|
RETURN 2
|
|
|
|
|
|
.FUNCT DESCRIBE-QUEEN,OBJ
|
|
PRINTI "furry "
|
|
PRINTB W?CREATURE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT QUEEN-F,CONTEXT,X
|
|
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
|
ICALL2 PRINTCA,QUEEN
|
|
PRINTI " is preening herself nearby"
|
|
CALL2 SEE-ANYTHING-IN?,QUEEN
|
|
ZERO? STACK /?CND4
|
|
PRINTI ". She's clutching "
|
|
ICALL2 CONTENTS,QUEEN
|
|
PRINTI " in her paw"
|
|
?CND4: PRINTC PER
|
|
RTRUE
|
|
?CCL3: EQUAL? CONTEXT,M-CONT \?CCL7
|
|
INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
ICALL1 QUEEN-SEES-YOU
|
|
RTRUE
|
|
?CCL7: ZERO? CONTEXT \FALSE
|
|
CALL NOUN-USED?,W?PLATYPUS,W?ALEXIS
|
|
ZERO? STACK /?CND1
|
|
GETP QUEEN,P?SDESC
|
|
ZERO? STACK /?CND1
|
|
FSET? QUEEN,IDENTIFIED /?CND1
|
|
FSET QUEEN,IDENTIFIED
|
|
PRINTI "[Good guess."
|
|
PRINT BRACKET
|
|
?CND1: ZERO? NOW-PRSI? /?CCL18
|
|
EQUAL? PRSA,V?GIVE,V?SHOW,V?FEED \FALSE
|
|
ICALL1 APPROACH-QUEEN
|
|
RTRUE
|
|
?CCL18: EQUAL? PRSA,V?HIT,V?MUNG,V?WALK-TO /?CTR21
|
|
EQUAL? PRSA,V?WAVE-AT,V?FOLLOW,V?RAPE /?CTR21
|
|
EQUAL? PRSA,V?UNDRESS \?CCL22
|
|
?CTR21: ICALL1 QUEEN-SEES-YOU
|
|
RTRUE
|
|
?CCL22: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL27
|
|
ICALL2 APPROACH-QUEEN,STR?656
|
|
RETURN 2
|
|
?CCL27: EQUAL? PRSA,V?EXAMINE \FALSE
|
|
PRINTI "Her red gown is a bit too snug"
|
|
CALL1 SEE-ANYTHING-IN?
|
|
ZERO? STACK /?CND32
|
|
PRINTI ". She's holding "
|
|
ICALL1 CONTENTS
|
|
PRINTI " in one of her paws"
|
|
?CND32: PRINT PERIOD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT APPROACH-QUEEN,STR
|
|
FSET? QUEEN,TOUCHED /?CND1
|
|
FSET QUEEN,TOUCHED
|
|
FSET QUEEN,SEEN
|
|
ICALL2 CTHE-PRINT,QUEEN
|
|
PRINTR " glances around her garden, listening intently. Anxious moments pass; then, hearing nothing further, she turns her back with a shrug."
|
|
?CND1: ICALL2 QUEEN-SEES-YOU,STR
|
|
RTRUE
|
|
|
|
|
|
.FUNCT QUEEN-SEES-YOU,STR
|
|
ICALL2 CTHE-PRINT,QUEEN
|
|
PRINTI " wheels around "
|
|
ZERO? STR /?CCL3
|
|
PRINT STR
|
|
JUMP ?CND1
|
|
?CCL3: PRINTI "as you step into view"
|
|
?CND1: PRINTI ". ""A spy!"" she cries, blowing a shrill note on her whistle.
|
|
Before you can think or move, twenty-seven heavily armed platypus guards materialize around you. After suffering exquisite torture at the skilled hands of the Queen, you're led away to twenty years of backbreaking labor in the granola mines of Antharia"
|
|
ICALL1 JIGS-UP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CONDUCTOR-F,CONTEXT,X
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL5
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL8
|
|
PRINTR "Passengers block your target."
|
|
?CCL8: EQUAL? PRSA,V?GIVE,V?SHOW,V?FEED \FALSE
|
|
ICALL1 CONDUCTOR-BUSY
|
|
RTRUE
|
|
?CCL5: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL11
|
|
ICALL1 PCLEAR
|
|
ICALL1 CONDUCTOR-BUSY
|
|
RETURN 2
|
|
?CCL11: EQUAL? PRSA,V?EXAMINE \?CCL15
|
|
PRINTR "His face is sallow with boredom."
|
|
?CCL15: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
PRINTI "A crowd of "
|
|
PRINTD PASSENGERS
|
|
PRINTR " bars your approach."
|
|
|
|
|
|
.FUNCT CONDUCTOR-BUSY
|
|
ICALL2 CTHE-PRINT,CONDUCTOR
|
|
PRINTI " is too busy "
|
|
EQUAL? HERE,AT-DOCK \?CCL3
|
|
PRINTI "herding "
|
|
PRINTD PASSENGERS
|
|
JUMP ?CND1
|
|
?CCL3: PRINTI "with his monologue"
|
|
?CND1: PRINT STR?657
|
|
RTRUE
|
|
|
|
|
|
.FUNCT PASSENGERS-F,CONTEXT,X
|
|
ZERO? CONTEXT \FALSE
|
|
ZERO? NOW-PRSI? /?CCL5
|
|
EQUAL? PRSA,V?THROW,V?THROW-OVER \?CCL8
|
|
PRINTR "You might hurt somebody."
|
|
?CCL8: EQUAL? PRSA,V?GIVE,V?SHOW,V?FEED \FALSE
|
|
ICALL1 PASSENGERS-BUSY
|
|
RTRUE
|
|
?CCL5: INTBL? PRSA,TALKVERBS,NTVERBS >X \?CCL11
|
|
ICALL1 PCLEAR
|
|
ICALL1 PASSENGERS-BUSY
|
|
RETURN 2
|
|
?CCL11: EQUAL? PRSA,V?EXAMINE \?CCL15
|
|
PRINTR "A suspicious passenger returns your stare."
|
|
?CCL15: INTBL? PRSA,TOUCHVERBS,NTOUCHES >X \FALSE
|
|
PRINTI "Suspicious "
|
|
PRINTD PASSENGERS
|
|
PRINTR " edge away from your approach."
|
|
|
|
|
|
.FUNCT PASSENGERS-BUSY
|
|
ICALL2 CTHE-PRINT,PASSENGERS
|
|
PRINTI " are too busy "
|
|
EQUAL? HERE,AT-DOCK \?CCL3
|
|
PRINTI "crowding around "
|
|
ICALL2 THE-PRINT,GONDOLA
|
|
JUMP ?CND1
|
|
?CCL3: PRINTI "gawking at the scenery"
|
|
?CND1: PRINT STR?657
|
|
RTRUE
|
|
|
|
.ENDI
|