222 lines
11 KiB
Plaintext
222 lines
11 KiB
Plaintext
|
|
<BEGIN-SEGMENT 0>
|
|
<OBJECT JESTER (DESC "jester") (DESCFCN JESTER-F) (SYNONYM JESTER JESTERS JOKER
|
|
MAN) (FLAGS ACTORBIT SEARCHBIT CONTBIT OPENBIT ANIMATEDBIT) (ACTION JESTER-F)>
|
|
<DEFINE-ROUTINE JESTER-F>
|
|
<BEGIN-SEGMENT CASTLE>
|
|
<DEFINE-ROUTINE J-ENTRY>
|
|
<GLOBAL MID-NAME-NUM <>>
|
|
<CONSTANT MID-NAMES <PTABLE "Hideoz" "Bivotar" "Urgwitz" "Foofoonap" "Elderbar"
|
|
"Goozums" "Syovar" "Buck" "Spike" "Zippy" "Magglebar" "Barfoo">>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT 0>
|
|
<CONSTANT MID-NAME-WORDS <PTABLE <VOC "HIDEOZ" NOUN> <VOC "BIVOTAR" NOUN> <VOC
|
|
"URGWITZ" NOUN> <VOC "FOOFOONAP" NOUN> <VOC "ELDERBAR" NOUN> <VOC "GOOZUMS"
|
|
NOUN> <VOC "SYOVAR" NOUN> <VOC "BUCK" NOUN> <VOC "SPIKE" NOUN> <VOC "ZIPPY"
|
|
NOUN> <VOC "MAGGLEBAR" NOUN> <VOC "BARFOO" NOUN>>>
|
|
<OBJECT MID-NAME (LOC GLOBAL-OBJECTS) (DESC "middle name") (SYNONYM HIDEOZ
|
|
BIVOTAR URGWITZ FOOFOONAP ELDERBAR GOOZUMS SYOVAR BUCK SPIKE ZIPPY MAGGLEBAR
|
|
BARFOO) (ACTION MID-NAME-F)>
|
|
<DEFINE-ROUTINE MID-NAME-F>
|
|
<OBJECT OTHER-J-NAMES (LOC GLOBAL-OBJECTS) (DESC "jester's name") (SYNONYM
|
|
BARBAZZO FERNAP) (ACTION OTHER-J-NAMES-F)>
|
|
<DEFINE-ROUTINE OTHER-J-NAMES-F>
|
|
<OBJECT J-POCKET (LOC JESTER) (DESC "jester's pocket") (SYNONYM POCKET) (
|
|
ADJECTIVE HIS JESTER\'S) (OWNER JESTER) (FLAGS NDESCBIT) (ACTION J-GARMENT-F)>
|
|
<OBJECT J-HAT (LOC JESTER) (DESC "jester's hat") (SYNONYM HAT BELL BELLS) (
|
|
ADJECTIVE HIS JESTER\'S SMALL GAUDY) (OWNER JESTER) (FLAGS NDESCBIT) (GENERIC
|
|
G-HAT-F) (ACTION J-GARMENT-F)>
|
|
<OBJECT J-SHOE (LOC JESTER) (DESC "jester's shoe") (SYNONYM SHOE) (ADJECTIVE
|
|
HIS JESTER\'S) (OWNER JESTER) (FLAGS NDESCBIT) (ACTION J-GARMENT-F)>
|
|
<DEFINE-ROUTINE J-GARMENT-F>
|
|
<OBJECT J-SUIT (LOC JESTER) (DESC "jester's suit") (SYNONYM SUIT) (ADJECTIVE
|
|
GREEN SKIN-TIGHT) (OWNER JESTER) (FLAGS NDESCBIT)>
|
|
<DEFINE-ROUTINE I-JESTER>
|
|
<DEFINE-ROUTINE J-EXITS>
|
|
<DEFINE-ROUTINE BEYOND-LAKE?>
|
|
<GLOBAL J-APPEAR-PROB 0>
|
|
<GLOBAL DO-J <>>
|
|
<DEFINE-ROUTINE REMOVE-J>
|
|
<DEFINE-ROUTINE DONT-CRY>
|
|
<GLOBAL J-INQ-SCENE <>>
|
|
<GLOBAL J-ON-RAFT <>>
|
|
<GLOBAL FUNNY-PAPER-PROB 20>
|
|
<GLOBAL SLATE-PROB 33>
|
|
<GLOBAL SCROLL-PROB 33>
|
|
<GLOBAL GUESSES 0>
|
|
<GLOBAL ALLIGATOR <>>
|
|
<DEFINE-ROUTINE I-UNALLIGATOR>
|
|
<GLOBAL SUFFOCATE-COUNTER 0>
|
|
<DEFINE-ROUTINE I-SUFFOCATE>
|
|
<DEFINE-ROUTINE I-FUNNY-PAPER>
|
|
<DEFINE-ROUTINE I-REMOVE-FUNNY-PAPER>
|
|
<OBJECT FUNNY-PAPER (LOC LOCAL-GLOBALS) (DESC "funny paper") (SYNONYM PAPER
|
|
PIECE NEWSPAPER COMICS) (ADJECTIVE COLORFUL FUNNY) (FLAGS TAKEBIT BURNBIT
|
|
READBIT) (SIZE 2) (ACTION FUNNY-PAPER-F)>
|
|
<DEFINE-ROUTINE FUNNY-PAPER-F>
|
|
<OBJECT BEDBUG (DESC "giant bedbug") (SYNONYM BUG BEDBUG) (ADJECTIVE LARGE BED)
|
|
(ACTION BEDBUG-F)>
|
|
<DEFINE-ROUTINE BEDBUG-F>
|
|
<OBJECT CLOWN-NOSE (DESC "red clown nose") (SYNONYM NOSE) (ADJECTIVE RED CLOWN)
|
|
(FLAGS WEARBIT TAKEBIT) (SIZE 2) (ACTION CLOWN-NOSE-F)>
|
|
<DEFINE-ROUTINE CLOWN-NOSE-F>
|
|
<OBJECT SLATE (LOC LOCAL-GLOBALS) (DESC "dusty slate") (SYNONYM SLATE) (
|
|
ADJECTIVE DUSTY SMALL SILLY OLD) (FLAGS READBIT TAKEBIT) (ACTION SLATE-F)>
|
|
<GLOBAL STUMP-X 0>
|
|
<GLOBAL STUMP-Y 0>
|
|
<DEFINE-ROUTINE SLATE-F>
|
|
<OBJECT SCROLL (LOC LOCAL-GLOBALS) (DESC "scroll") (SYNONYM SCROLL PAPER) (
|
|
FLAGS READBIT TAKEBIT BURNBIT) (SIZE 2) (ACTION SCROLL-F)>
|
|
<DEFINE-ROUTINE SCROLL-F>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT CASTLE>
|
|
<OBJECT SHELL-TABLE (DESC "small table") (SYNONYM TABLE) (ADJECTIVE SMALL) (
|
|
FLAGS SURFACEBIT CONTBIT OPENBIT SEARCHBIT)>
|
|
<OBJECT LEFT-SHELL (LOC SHELL-TABLE) (DESC "left shell") (SYNONYM SHELL) (
|
|
ADJECTIVE LEFT FIRST) (ACTION SHELL-F)>
|
|
<OBJECT CENTER-SHELL (LOC SHELL-TABLE) (DESC "center shell") (SYNONYM SHELL) (
|
|
ADJECTIVE CENTER MIDDLE SECOND) (ACTION SHELL-F)>
|
|
<OBJECT RIGHT-SHELL (LOC SHELL-TABLE) (DESC "right shell") (SYNONYM SHELL) (
|
|
ADJECTIVE RIGHT THIRD) (ACTION SHELL-F)>
|
|
<DEFINE-ROUTINE SHELL-F>
|
|
<DEFINE-ROUTINE ANOTHER-SHELL-GAME>
|
|
<DEFINE-ROUTINE SEE-BILL?>
|
|
<OBJECT ZORKMID-BILL (LOC LOCAL-GLOBALS) (DESC "zorkmid bill") (SYNONYM BILL
|
|
MONEY) (ADJECTIVE ZORKMID) (FLAGS TAKEBIT BURNBIT READBIT MAGICBIT) (SIZE 1) (
|
|
VALUE 0) (TEXT "The denomination of the bill is 100,000 zorkmids. Only one such bill
|
|
was ever printed, and that was at the personal request of J. Pierpont
|
|
Flathead.")>
|
|
<ROOM JESTERS-QUARTERS (LOC ROOMS) (REGION "Flatheadia") (DESC
|
|
"Jester's Quarters") (DOWN TO SERVANTS-QUARTERS) (OUT TO SERVANTS-QUARTERS) (
|
|
NORTH TO WEIRD IF LARGE-DOOR IS OPEN) (SOUTH PER SMALL-DOOR-ENTER-F) (FLAGS
|
|
RLANDBIT) (SYNONYM QUARTERS) (OWNER JESTER) (GLOBAL STAIRS LARGE-DOOR
|
|
SMALL-DOOR) (MAP-LOC <PTABLE MAIN-MAP-NUM MAP-GEN-Y-4 MAP-GEN-X-10>) (ICON
|
|
J-QUARTER-ICON) (ACTION JESTERS-QUARTERS-F)>
|
|
<DEFINE-ROUTINE JESTERS-QUARTERS-F>
|
|
<DEFINE-ROUTINE SMALL-DOOR-ENTER-F>
|
|
<OBJECT LARGE-DOOR (LOC LOCAL-GLOBALS) (DESC "large arched door") (SYNONYM DOOR
|
|
) (ADJECTIVE LARGE ARCHED) (FLAGS DOORBIT) (GENERIC G-J-DOOR-F) (ACTION
|
|
LARGE-DOOR-F)>
|
|
<DEFINE-ROUTINE LARGE-DOOR-F>
|
|
<DEFINE-ROUTINE G-J-DOOR-F>
|
|
<OBJECT SMALL-DOOR (LOC LOCAL-GLOBALS) (DESC "small louvered door") (SYNONYM
|
|
DOOR) (ADJECTIVE SMALL SOUTH LOUVERED) (FLAGS NDESCBIT) (GENERIC G-J-DOOR-F) (
|
|
ACTION SMALL-DOOR-F)>
|
|
<DEFINE-ROUTINE SMALL-DOOR-F>
|
|
<OBJECT T-OF-B (OWNER T-OF-B) (DESC "Tower of Bozbar") (SYNONYM TOWER BOZBAR) (
|
|
FLAGS CONTBIT OPENBIT SEARCHBIT) (RESEARCH
|
|
"The Tower of Bozbar, an ancient game of unknown origin, consists of three pegs
|
|
and a pile of weights. The goal is to move the pile from one peg to another,
|
|
moving one weight at a time, with the constraint that no weight can ever be
|
|
placed atop a smaller weight. Many people say that the Tower of Bozbar is a
|
|
superb method of mental relaxation. [Obviously, none of these people have ever
|
|
played Zork Zero.]")>
|
|
<OBJECT LEFT-PEG (LOC T-OF-B) (DESC "left peg") (SYNONYM PEG POST) (ADJECTIVE
|
|
FIRST LEFT) (FLAGS NDESCBIT CONTBIT OPENBIT SEARCHBIT)>
|
|
<OBJECT CENTER-PEG (LOC T-OF-B) (DESC "center peg") (SYNONYM PEG POST) (
|
|
ADJECTIVE SECOND CENTER MIDDLE) (FLAGS NDESCBIT CONTBIT OPENBIT SEARCHBIT)>
|
|
<OBJECT RIGHT-PEG (LOC T-OF-B) (DESC "right peg") (SYNONYM PEG POST) (ADJECTIVE
|
|
THIRD RIGHT) (FLAGS NDESCBIT CONTBIT OPENBIT SEARCHBIT)>
|
|
<OBJECT 1-WEIGHT (LOC CENTER-PEG) (DESC "1-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 1-UGH) (FLAGS NDESCBIT) (SIZE 1) (ACTION WEIGHT-F)>
|
|
<OBJECT 2-WEIGHT (LOC CENTER-PEG) (DESC "2-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 2-UGH) (FLAGS NDESCBIT) (SIZE 2) (ACTION WEIGHT-F)>
|
|
<OBJECT 3-WEIGHT (LOC CENTER-PEG) (DESC "3-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 3-UGH) (FLAGS NDESCBIT) (SIZE 3) (ACTION WEIGHT-F)>
|
|
<OBJECT 4-WEIGHT (LOC CENTER-PEG) (DESC "4-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 4-UGH) (FLAGS NDESCBIT) (SIZE 4) (ACTION WEIGHT-F)>
|
|
<OBJECT 5-WEIGHT (LOC CENTER-PEG) (DESC "5-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 5-UGH) (FLAGS NDESCBIT) (SIZE 5) (ACTION WEIGHT-F)>
|
|
<OBJECT 6-WEIGHT (LOC CENTER-PEG) (DESC "6-ugh weight") (SYNONYM WEIGHT) (
|
|
ADJECTIVE 6-UGH) (FLAGS NDESCBIT) (SIZE 6) (ACTION WEIGHT-F)>
|
|
<DEFINE-ROUTINE WEIGHT-F>
|
|
<GLOBAL TOWER-BEATEN <>>
|
|
<GLOBAL TOWER-CHANGED <>>
|
|
<DEFINE-ROUTINE TOWER-MODE>
|
|
<DEFINE-ROUTINE B-MOUSE-PEG-PICK>
|
|
<DEFINE-ROUTINE B-MOUSE-WEIGHT-PICK>
|
|
<DEFINE-ROUTINE TOWER-WIN-CHECK>
|
|
<DEFINE-ROUTINE SET-PEG-TABLE>
|
|
<DEFINE-ROUTINE NOT-TOP-WEIGHT>
|
|
<DEFINE-ROUTINE MOVE-WEIGHT>
|
|
<DEFINE-ROUTINE CRUSH-WEIGHT>
|
|
<DEFINE-ROUTINE B-SAVE>
|
|
<DEFINE-ROUTINE B-RESTORE>
|
|
<CONSTANT B-X-TBL <TABLE <> <> <>>>
|
|
<CONSTANT B-Y-TBL <TABLE <> <> <> <> <> <>>>
|
|
<CONSTANT TOWER-UNDO-TABLE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
|
0>>
|
|
<CONSTANT LEFT-PEG-TABLE <TABLE 0 0 0 0 0 0>>
|
|
<CONSTANT CENTER-PEG-TABLE <TABLE 6-WEIGHT 5-WEIGHT 4-WEIGHT 3-WEIGHT 2-WEIGHT
|
|
1-WEIGHT>>
|
|
<CONSTANT RIGHT-PEG-TABLE <TABLE 0 0 0 0 0 0>>
|
|
<CONSTANT B-PICSET-TBL <TABLE B-RESTORE-PEG 1-WEIGHT 2-WEIGHT 3-WEIGHT 4-WEIGHT
|
|
5-WEIGHT 6-WEIGHT 0>>
|
|
<DEFINE-ROUTINE DRAW-TOWER>
|
|
<DEFINE-ROUTINE DRAW-PEG>
|
|
<DEFINE-ROUTINE SET-B-PIC>
|
|
<ROOM WEIRD (LOC ROOMS) (REGION "Flatheadia") (DESC "Weird Passageway") (SOUTH
|
|
TO JESTERS-QUARTERS IF LARGE-DOOR IS OPEN) (NORTH PER WEIRD-EXIT-F) (WEST PER
|
|
WEIRD-EXIT-F) (EAST PER WEIRD-EXIT-F) (FLAGS RLANDBIT) (GLOBAL LARGE-DOOR) (
|
|
MAP-LOC <PTABLE MAIN-MAP-NUM MAP-GEN-Y-3 MAP-GEN-X-10>) (ACTION WEIRD-F)>
|
|
<DEFINE-ROUTINE WEIRD-EXIT-F>
|
|
<DEFINE-ROUTINE WEIRD-ENTER-F>
|
|
<DEFINE-ROUTINE WEIRD-F>
|
|
<ROOM PYRAMID (LOC ROOMS) (REGION "Flatheadia") (DESC "Pyramid Room") (SOUTH
|
|
PER WEIRD-ENTER-F) (OUT PER WEIRD-ENTER-F) (FLAGS RLANDBIT) (VALUE 7) (MAP-LOC
|
|
<PTABLE MAIN-MAP-NUM MAP-GEN-Y-2 MAP-GEN-X-10>) (ICON PYRAMID-ICON) (ACTION
|
|
PYRAMID-F)>
|
|
<BEGIN-SEGMENT 0>
|
|
<OBJECT GOGGLES (LOC PYRAMID) (OWNER GOGGLES) (DESC "pair of goggles") (PLURAL
|
|
"goggles") (SYNONYM GOGGLES PAIR ETCHING) (FLAGS PLURALBIT TAKEBIT WEARBIT
|
|
TRANSBIT) (ACTION GOGGLES-F)>
|
|
<DEFINE-ROUTINE GOGGLES-F>
|
|
<DEFINE-ROUTINE DISCOVER-X-RAY>
|
|
<GLOBAL DONT-KNOW-ABOUT-XRAY T>
|
|
<OBJECT CRATE (LOC PYRAMID) (DESC "crate") (LDESC
|
|
"Sitting in the corner is a wooden shipping crate with some writing
|
|
stencilled across the top.") (SYNONYM CRATE WRITING) (ADJECTIVE WOODEN SHIPPING
|
|
STENCILLED) (FLAGS READBIT BURNBIT CONTBIT SEARCHBIT TAKEBIT) (CAPACITY 100) (
|
|
OWNER CRATE) (SIZE 80) (TEXT
|
|
"\"1000 Clown Noses, Red|
|
|
Frobozz Magic Clown Nose Company\"")>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT CASTLE>
|
|
<ROOM PYRAMID-R (LOC ROOMS) (REGION "Flatheadia") (DESC "Pyramid Room") (WEST
|
|
PER WEIRD-ENTER-F) (OUT PER WEIRD-ENTER-F) (FLAGS RLANDBIT) (VALUE 7) (MAP-LOC
|
|
<PTABLE MAIN-MAP-NUM MAP-GEN-Y-3 MAP-GEN-X-11>) (ICON PYRAMID-ICON) (ACTION
|
|
PYRAMID-F)>
|
|
<OBJECT MANUSCRIPT (LOC PYRAMID-R) (DESC "manuscript") (SYNONYM MANUSCRIPT) (
|
|
FLAGS READBIT TAKEBIT BURNBIT MAGICBIT) (VALUE 12) (TEXT
|
|
"The manuscript is entitled \"On the Discoloration of Roadside Slush.\" You
|
|
try reading it, but keep dozing off on the third or fourth word.")>
|
|
<ROOM PYRAMID-L (LOC ROOMS) (REGION "Flatheadia") (DESC "Pyramid Room") (EAST
|
|
PER WEIRD-ENTER-F) (OUT PER WEIRD-ENTER-F) (FLAGS RLANDBIT) (VALUE 7) (MAP-LOC
|
|
<PTABLE MAIN-MAP-NUM MAP-GEN-Y-3 MAP-GEN-X-9>) (ICON PYRAMID-ICON) (ACTION
|
|
PYRAMID-F)>
|
|
<DEFINE-ROUTINE PYRAMID-F>
|
|
<BEGIN-SEGMENT 0>
|
|
<OBJECT CUP (LOC PYRAMID-L) (DESC "cup") (SYNONYM CUP) (FLAGS TAKEBIT CONTBIT
|
|
SEARCHBIT OPENBIT) (ACTION CUP-F)>
|
|
<DEFINE-ROUTINE CUP-F>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT CASTLE>
|
|
<OBJECT POTION (LOC CUP) (DESC "magic potion") (SYNONYM POTION POTIONS LIQUID)
|
|
(ADJECTIVE MAGIC YELLOW-GREEN) (FLAGS NARTICLEBIT) (RESEARCH
|
|
"\"Potions are the most accessible form of magic for the masses, since
|
|
they are simply drunk like water. No lessons in complicated spell-casting
|
|
are required.\"") (ACTION POTION-F)>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT 0>
|
|
<GLOBAL POTION-GULPS 4>
|
|
<GLOBAL PLANT-TALKER <>>
|
|
<DEFINE-ROUTINE POTION-F>
|
|
<DEFINE-ROUTINE I-POTION>
|
|
<DEFINE-ROUTINE PLANT-STUNNED>
|
|
<END-SEGMENT>
|
|
<BEGIN-SEGMENT FENSHIRE>
|
|
<OBJECT COOKPOT (DESC "cookpot") (SYNONYM COOKPOT POT) (FLAGS CONTBIT OPENBIT
|
|
SEARCHBIT) (CAPACITY 50) (ACTION COOKPOT-F)>
|
|
<DEFINE-ROUTINE COOKPOT-F>
|
|
<OBJECT COOKFIRE (DESC "cookfire") (SYNONYM COOKFIRE FIRE) (FLAGS FLAMEBIT)>
|
|
<END-SEGMENT> |