Revision 57

This commit is contained in:
historicalsource 2019-04-14 00:48:40 -04:00
parent af919a956f
commit 86b36fa0fd
13 changed files with 2109 additions and 486 deletions

43
beyond.zil Normal file
View File

@ -0,0 +1,43 @@
"Z for BEYOND ZORK:
Copyright (C)1987 Infocom, Inc. All Rights Reserved."
<PRINC "
Beyond ZORK: The Coconut of Quendor
">
<VERSION XZIP>
<FREQUENT-WORDS?>
<SETG DISPLAY-OPS? T>
<SETG USE-UNDO? T>
<ORDER-OBJECTS? ROOMS-FIRST>
ON!-INITIAL "For DEBUGR."
OFF!-INITIAL
ENABLE!-INITIAL
DISABLE!-INITIAL
<SET REDEFINE T>
<PUTPROP DIRECTIONS PROPSPEC!-IZILCH>
<DIRECTIONS NORTH NE EAST SE SOUTH SW WEST NW UP DOWN IN OUT>
<INSERT-FILE "CONSTANTS" T>
<INSERT-FILE "MACROS" T>
<INSERT-FILE "SYNTAX" T>
<INSERT-FILE "MISC" T>
<INSERT-FILE "PARSER" T>
<INSERT-FILE "VERBS" T>
<INSERT-FILE "EVENTS" T>
<INSERT-FILE "PEOPLE" T>
<INSERT-FILE "MONSTERS" T>
<INSERT-FILE "PLACES" T>
<INSERT-FILE "THINGS" T>
<INSERT-FILE "RARITIES" T>
<PROPDEF SIZE 0>
<PROPDEF CAPACITY 0>

1492
bz.chart Normal file

File diff suppressed because it is too large Load Diff

BIN
bzalpha.zip Normal file

Binary file not shown.

BIN
bzbeta.zip Normal file

Binary file not shown.

View File

@ -72,14 +72,12 @@
<CONSTANT C-CYAN 8>
<CONSTANT C-WHITE 9>
<CONSTANT COLOR-NAMES
<PTABLE "same" "default" "black" "red" "green" "yellow"
"blue" "magenta" "cyan" "white">>
<CONSTANT BWWW <PTABLE (BYTE) C-BLUE C-WHITE C-WHITE C-WHITE>>
<CONSTANT BWCR <PTABLE (BYTE) C-BLACK C-WHITE C-CYAN C-RED>>
<CONSTANT WBBB <PTABLE (BYTE) C-WHITE C-BLACK C-BLACK C-BLACK>>
<CONSTANT DWWW <PTABLE (BYTE) C-BLACK C-WHITE C-WHITE C-WHITE>>
<CONSTANT DEFCOLORS
<PTABLE (BYTE) C-DEFAULT C-DEFAULT C-DEFAULT C-DEFAULT>>
<CONSTANT ST-MONO <PLTABLE DWWW WBBB>>
@ -87,18 +85,16 @@
<PLTABLE
0 ; "DEC-20"
0 ; "Apple //e"
<PLTABLE
WBBB
DWWW > ; "Macintosh"
0 ; "Macintosh"
<PLTABLE
BWCR DWWW BWWW WBBB> ; "Amiga"
<PLTABLE
BWCR DWWW BWWW WBBB> ; "Atari ST"
<PLTABLE
DEFCOLORS
BWWW
<PTABLE (BYTE) C-BLUE C-WHITE C-WHITE C-CYAN>
<PTABLE (BYTE) C-BLUE C-WHITE C-WHITE C-GREEN>
BWCR DWWW WBBB> ; "IBM"
<PTABLE (BYTE) C-BLUE C-WHITE C-WHITE C-GREEN>
BWCR DWWW WBBB> ; "IBM"
<PLTABLE
<PTABLE (BYTE) C-BLACK C-WHITE C-YELLOW C-CYAN>
DWWW WBBB BWWW> ; "C128"
@ -711,16 +707,16 @@
<CONSTANT MAX-LEVEL 8>
<CONSTANT RANK-NAMES <PTABLE "Peasant" "Novice" "Cheater">>
; <CONSTANT SAVE-NAME <PLTABLE (STRING) "BEYONDZ">>
<CONSTANT CHARNAME-LENGTH 24>
<CONSTANT CHARNAME <ITABLE %<+ ,CHARNAME-LENGTH 1> (BYTE) 0>>
<CONSTANT SAVE-NAME <PLTABLE (STRING) "BEYONDZ">>
<CONSTANT NAMES-LENGTH 12>
<CONSTANT DEFAULT-NAME-LENGTH 13>
<CONSTANT DEFAULT-NAME
<PTABLE (STRING) 11 "Buck Palace" 0>>
<PTABLE (STRING) 11 "Frank Booth" 0>>
<CONSTANT LABEL-WIDTH 12>
<CONSTANT BAR-LABELS

View File

@ -208,7 +208,7 @@
<3 .OBJ>>>
<REST .L>>)>
<PUTPROP THINGS PROPSPEC!-IZILCH PSEUDO>
<PUTPROP THINGS PROPSPEC PSEUDO>
<DEFMAC LSB ('WRD)
<FORM BAND .WRD 127>>

401
misc.zil
View File

@ -528,11 +528,14 @@
<RFALSE>>
<ROUTINE DO-CURSET (Y X)
<COND (<EQUAL? 1 ,CWIDTH ,CHEIGHT>
<CURSET .Y .X>
<RFALSE>)>
<SET X <* .X ,CWIDTH>>
<CURSET <* ,CHEIGHT .Y> .X>
<COND (<NOT <EQUAL? 1 ,CWIDTH ,CHEIGHT>>
<DEC X>
<SET X <* .X ,CWIDTH>>
<INC X>
<DEC Y>
<SET Y <* .Y ,CHEIGHT>>
<INC Y>)>
<CURSET .Y .X>
<RFALSE>>
<ROUTINE TO-TOP-WINDOW ("AUX" X)
@ -1871,6 +1874,394 @@
<DPRINT .O>
<RTRUE>>
<ROUTINE DESCRIBE-LANTERN (OBJ)
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?BROKEN C ,SP>)
(<IS? .OBJ ,LIGHTED>
<TELL B ,W?LIGHTED C ,SP>)
(<NOT <IS? .OBJ ,MAPPED>>
<TELL B ,W?RUSTY C ,SP>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-SHILL (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<IS? .OBJ ,TOUCHED>
<PRINTD .OBJ>
<RTRUE>)>
<TELL "piece of " B ,W?DRIFTWOOD>
<RTRUE>>
<ROUTINE DESCRIBE-SWORD (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-AXE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-DAGGER (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?RUSTY C ,SP>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-AMULET (OBJ)
<COND (<IS? ,AMULET ,IDENTIFIED>
<TELL "Amulet of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-PHASE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<HERE? APLANE>
<PRINTD .OBJ>
<RTRUE>)>
<TELL 'SHAPE>
<RTRUE>>
<ROUTINE DESCRIBE-JUNGLE-WAND (CONTEXT)
<TELL CA ,DESCING " lies in a clump of grass.">
<RTRUE>>
<ROUTINE DESCRIBE-MOOR-WAND (CONTEXT)
<TELL "The end of " A ,DESCING " sticks out of the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-FOREST-WAND (CONTEXT)
<TELL "Somebody has left " A ,DESCING " lying across the path.">
<RTRUE>>
<ROUTINE DESCRIBE-CELLAR-WAND (CONTEXT)
<TELL CA ,DESCING " lies in a shadowy corner.">
<RTRUE>>
<ROUTINE DESCRIBE-TOWER-WAND (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies half-hidden in ">
<TELL "a corner.">
<RTRUE>>
<ROUTINE DESCRIBE-HALL-WAND (CONTEXT)
<TELL "The tip of " A ,DESCING>
<PRINT " is visible in the ">
<TELL "rubble.">
<RTRUE>>
<ROUTINE DESCRIBE-TELE-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Sayonara">)>
<RTRUE>>
<ROUTINE DESCRIBE-SLEEP-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Anesthesia">)>
<RTRUE>>
<ROUTINE DESCRIBE-IO-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Eversion">)>
<RTRUE>>
<ROUTINE DESCRIBE-LEV-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Levitation">)>
<RTRUE>>
<ROUTINE DESCRIBE-BLAST-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Annihilation">)>
<RTRUE>>
<ROUTINE DESCRIBE-DISPEL-WAND (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Dispel ">)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-HELM (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Pheehelm">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-HORSE (OBJ)
<COND (<IS? ,HORSE ,LIVING>
<TELL B ,W?GRAY>)
(T
<TELL B ,W?DEAD>)>
<TELL C ,SP 'HORSE>
<RTRUE>>
<ROUTINE DESCRIBE-TRENCH (OBJ)
<COND (<HERE? ARCH12>
<TELL "minxhole">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-KEYS (OBJ "AUX" WORD)
<SET WORD <GET <GETPT .OBJ ,P?ADJECTIVE> 0>>
<COND (<NOT <SEE-COLOR?>>
<SET WORD ,W?GRAY>)>
<TELL B .WORD C ,SP>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-ARROW (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-CLOAK (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Stealth">)>
<RTRUE>>
<ROUTINE DESCRIBE-PARASOL (OBJ)
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?BROKEN>)
(<IS? .OBJ ,OPENED>
<TELL B ,W?OPEN>)
(T
<TELL B ,W?CLOSED>)>
<PRINTC ,SP>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-WHISTLE (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Summoning">)>
<RTRUE>>
<ROUTINE DESCRIBE-BFLY (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<NOT <IS? .OBJ ,LIVING>>
<TELL "dead ">)>
<COND (<IS? .OBJ ,MUNGED>
<PRINT "caterpillar">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-GOBLET (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Chalice of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-RING (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Shielding">)>
<RTRUE>>
<ROUTINE DESCRIBE-SPADE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-SCABBARD (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Sheath of Grueslayer">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-DIAMOND (OBJ)
<TELL B ,W?SNOWFLAKE>
<RTRUE>>
<ROUTINE DESCRIBE-DO-PARTAY (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Mischief">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-BLESS-WEAPON (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Honing">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-BLESS-ARMOR (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Protection">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-DO-FILFRE (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Fireworks">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-DO-GOTO (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Recall">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-TOWER-SCROLL (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies half-hidden in ">
<TELL "shadow.">
<RTRUE>>
<ROUTINE DESCRIBE-FOREST-SCROLL (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies forgotten in ">
<TELL "the underbrush.">
<RTRUE>>
<ROUTINE DESCRIBE-PLAIN-SCROLL (CONTEXT)
<TELL CA ,DESCING " is blowing against a clump of grass.">
<RTRUE>>
<ROUTINE DESCRIBE-MOOR-SCROLL (CONTEXT)
<TELL CA ,DESCING " lies trodden in the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-JUNGLE-SCROLL (CONTEXT)
<TELL "The undergrowth nearly conceals " A ,DESCING C ,PER>
<RTRUE>>
<ROUTINE DESCRIBE-RENEWAL (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Renewal">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE RENEWAL-DESC (CONTEXT)
<TELL CA ,RENEWAL " lies trampled in the dust.">
<RTRUE>>
<ROUTINE DESCRIBE-PALIMP (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Gating">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-STONE (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Scrystone of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-WALL (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<COND (<EQUAL? .OBJ ,NWALL>
<TELL "Nor">)
(T
<TELL "Sou">)>
<TELL "th Wall of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-IQ-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Enlightenment">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-HEALING-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Healing">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-DEATH-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Death">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-MIGHT-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Might">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-FORGET-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Forgetfulness">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DESCRIBE-MOOR-POTION (CONTEXT)
<TELL "Some luckless fool has left " A ,DESCING
" in the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-RUINS-POTION (CONTEXT)
<TELL "Someone else must have been here recently. There's "
A ,DESCING>
<PRINT " lying in the dust.">
<RTRUE>>
<ROUTINE KERBLAM ()
<ITALICIZE "Kerblam">
<TELL "! ">

View File

@ -4736,10 +4736,11 @@ THE ,BENCH " in the center of the room">
<REPLACE-SYN? ,PRINCE ,W?CORPSE ,W?ZZZP>
<REPLACE-ADJ? ,PRINCE ,W?DEAD ,W?ZZZP>
<REMOVE ,HORSE>
<REMOVE ,DEAD-HORSE>
<MAKE ,HORSE ,LIVING>
<UNMAKE ,HORSE ,NODESC>
<REPLACE-ADJ? ,HORSE ,W?DEAD ,W?ZZZP>
<PUTP ,HORSE ,P?ACTION ,HORSE-F>)>
; <REPLACE-ADJ? ,HORSE ,W?DEAD ,W?ZZZP>
; <PUTP ,HORSE ,P?ACTION ,HORSE-F>)>
<RETURN <HANDLE-ARCH-ROOMS? .CONTEXT>>>
<OBJECT ARCH5

View File

@ -289,8 +289,8 @@
(LOC GLOBAL-OBJECTS)
(DESC "yourself")
(FLAGS PERSON LIVING TOUCHED NOARTICLE)
(SYNONYM BUCK PALACE I ME MYSELF SELF BODY)
(ADJECTIVE BUCK MY OWN)
(SYNONYM I ME MYSELF SELF BODY)
(ADJECTIVE MY OWN)
(ACTION ME-F)>
<ROUTINE ME-F ("OPT" (CONTEXT <>) "AUX" (ANY <>) OBJ NXT X)
@ -1642,8 +1642,6 @@ By what Name shall your character be known?">
<DEQUEUE ,I-URGRUE>
<UNMAKE ,URGRUE ,LIVING>
<SETG LAST-MONSTER <>>
; <DEQUEUE ,I-URGRUE>
; <WINDOW ,SHOWING-ROOM>
<TELL
"leaving you gasping but alive. You stumble backwards to find the old man leaning against the wall, breathing hard, his eyes brimming with tears.|
\"Enough,\" he cries again, gesturing towards the exit. \"Take what you want and leave this place! I cannot bring myself to murder one so virtuous. Go!\" His voice is bitter with despair. \"Leave me to wallow in Compassion.\"|
@ -1737,8 +1735,9 @@ By what Name shall your character be known?">
<SET TBL <GET ,MACHINE-COLORS ,HOST>>
<COND (<AND <ZERO? ,COLORS?>
<EQUAL? ,HOST ,ATARI-ST>>
<SET TBL ,ST-MONO>)>
<COND (<OR <ZERO? .TBL>
<SET TBL ,ST-MONO>)
(<OR <ZERO? ,COLORS?>
<ZERO? .TBL>
<AND <SET CNT <GET .TBL 0>>
<L? .CNT 2>>>
<NOT-AVAILABLE>
@ -1749,12 +1748,12 @@ By what Name shall your character be known?">
<SETG INCOLOR <GETB .TBL 2>>
<SETG GCOLOR <GETB .TBL 3>>
<V-REFRESH>
<TELL CR "[Color palette " N ,PALLETTE
<TELL CR "[Color pallette " N ,PALLETTE
" of " N .CNT ".]" CR>
<COND (<IGRTR? PALLETTE .CNT>
<SETG PALLETTE 1>)>
<RTRUE>)
(<PRSO? INTNUM>
; (<PRSO? INTNUM>
<COND (<ZERO? ,P-NUMBER>
<COND (<IGRTR? BGND 9>
<SETG BGND 1>)>
@ -1786,7 +1785,7 @@ By what Name shall your character be known?">
<DONT-UNDERSTAND>
<RTRUE>>
<ROUTINE SAY-COLOR (C STR "OPT" X)
; <ROUTINE SAY-COLOR (C STR "OPT" X)
<COND (<NOT <ASSIGNED? X>>
<V-REFRESH>)>
<TELL "[" .STR " color = " <GET ,COLOR-NAMES .C> ".]" CR>
@ -1928,7 +1927,7 @@ beyond Magick, beyond Science ...\"||">
<ROUTINE V-$CREDITS ("AUX" X)
<CLEAR -1>
<SPLIT 23>
<SPLIT <- ,HEIGHT 1>>
<TO-TOP-WINDOW>
<CENTER 2 33>
<BIG-ZORK>
@ -1957,29 +1956,36 @@ beyond Magick, beyond Science ...\"||">
<COLOR ,FORE ,BGND>
<TELL "Carl Genatossio Jon Palace Elizabeth Langosy">
<CENTER 15 57>
<COLOR ,INCOLOR ,BGND>
<TELL
<SET X 15>
<COND (<G? ,HEIGHT 23>
<CENTER .X 57>
<COLOR ,INCOLOR ,BGND>
<TELL
"Cover Map & Book Photography Production">
<CENTER 16 63>
<COLOR ,FORE ,BGND>
<TELL
<INC X>
<CENTER .X 63>
<COLOR ,FORE ,BGND>
<TELL
"John Gamache Bruce Hutchinson Steve Grohe Angela Crews">
<SET X <+ .X 2>>)>
<CENTER 18 18>
<CENTER .X 18>
<COLOR ,INCOLOR ,BGND>
<TELL "Micro Interpreters">
<CENTER 19 47>
<INC X>
<CENTER .X 47>
<COLOR ,FORE ,BGND>
<TELL "Tim Anderson Jon Arnold Duncan Blanchard">
<CENTER 20 34>
<INC X>
<CENTER .X 34>
<TELL "Linde Dynneson Andy Kaluzniacki">
<SET X <+ .X 2>>
<COLOR ,INCOLOR ,BGND>
<CENTER 22 20>
<CENTER .X 20>
<TELL "Z Development System">
<CENTER 23 43>
<INC X>
<CENTER .X 43>
<COLOR ,FORE ,BGND>
<TELL "Tim Anderson Dave Lebling Chris Reeve">
<TO-BOTTOM-WINDOW>

View File

@ -473,15 +473,6 @@
(ADJECTIVE LIGHT LAMP RUSTY RUSTED DARK ZZZP)
(ACTION LANTERN-F)>
<ROUTINE DESCRIBE-LANTERN (OBJ)
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?BROKEN C ,SP>)
(<IS? .OBJ ,LIGHTED>
<TELL B ,W?LIGHTED C ,SP>)
(<NOT <IS? .OBJ ,MAPPED>>
<TELL B ,W?RUSTY C ,SP>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE LANTERN-F ("AUX" TBL X)
<COND (<THIS-PRSI?>
@ -701,17 +692,6 @@
(DESCFCN DESCRIBE-WEAPONS)
(ACTION SHILL-F)>
<ROUTINE DESCRIBE-SHILL (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<IS? .OBJ ,TOUCHED>
<PRINTD .OBJ>
<RTRUE>)>
<TELL "piece of " B ,W?DRIFTWOOD>
<RTRUE>>
"BUOYANT = queue flag, NODESC = appearance delay."
@ -766,14 +746,6 @@
(DESCFCN DESCRIBE-WEAPONS)
(ACTION SWORD-F)>
<ROUTINE DESCRIBE-SWORD (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE SWORD-F ()
<COND (<THIS-PRSI?>
@ -799,14 +771,6 @@
(DESCFCN DESCRIBE-WEAPONS)
(ACTION AXE-F)>
<ROUTINE DESCRIBE-AXE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE AXE-F ()
<COND (<THIS-PRSI?>
@ -832,16 +796,6 @@
(DESCFCN DESCRIBE-WEAPONS)
(ACTION DAGGER-F)>
<ROUTINE DESCRIBE-DAGGER (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?RUSTY C ,SP>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DAGGER-F ()
<COND (<THIS-PRSI?>
@ -1019,13 +973,6 @@ THE ,BOTTLE
(NAME-TABLE 0)
(ACTION AMULET-F)>
<ROUTINE DESCRIBE-AMULET (OBJ)
<COND (<IS? ,AMULET ,IDENTIFIED>
<TELL "Amulet of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<GLOBAL AMULET-STARS:NUMBER 3>
<GLOBAL AMULET-WORD <>>
@ -2279,17 +2226,6 @@ THE ,BOTTLE
"NOALL = never seen."
<ROUTINE DESCRIBE-PHASE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<HERE? APLANE>
<PRINTD .OBJ>
<RTRUE>)>
<TELL 'SHAPE>
<RTRUE>>
<ROUTINE HARD-PHASE-F ()
<COND (<THIS-PRSI?>
@ -2565,39 +2501,7 @@ THE ,BOTTLE
(DESCFCN 0)
(ACTION 0)>
<ROUTINE DESCRIBE-JUNGLE-WAND (CONTEXT)
<TELL CA ,DESCING " lies in a clump of grass.">
<RTRUE>>
<ROUTINE DESCRIBE-MOOR-WAND (CONTEXT)
<TELL "The end of " A ,DESCING " sticks out of the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-FOREST-WAND (CONTEXT)
<TELL "Somebody has left " A ,DESCING " lying across the path.">
<RTRUE>>
<ROUTINE DESCRIBE-CELLAR-WAND (CONTEXT)
<TELL CA ,DESCING " lies in a shadowy corner.">
<RTRUE>>
<ROUTINE DESCRIBE-TOWER-WAND (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies half-hidden in ">
<TELL "a corner.">
<RTRUE>>
<ROUTINE DESCRIBE-HALL-WAND (CONTEXT)
<TELL "The tip of " A ,DESCING>
<PRINT " is visible in the ">
<TELL "rubble.">
<RTRUE>>
<ROUTINE DESCRIBE-TELE-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Sayonara">)>
<RTRUE>>
<ROUTINE TELE-WAND-F ()
<COND (<THIS-PRSI?>
@ -2696,11 +2600,6 @@ THE ,BOTTLE
<MOVE .OBJ .RM>
<RFALSE>>
<ROUTINE DESCRIBE-SLEEP-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Anesthesia">)>
<RTRUE>>
<ROUTINE SLEEP-WAND-F ()
<COND (<THIS-PRSI?>
@ -2792,11 +2691,6 @@ THE ,BOTTLE
<SETG DACT-SLEEP 4>
<RFALSE>>
<ROUTINE DESCRIBE-IO-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Eversion">)>
<RTRUE>>
<ROUTINE IO-WAND-F ()
<COND (<THIS-PRSI?>
@ -2898,11 +2792,6 @@ THE ,BOTTLE
<UPDATE-STAT .S ,STRENGTH>
<RTRUE>>
<ROUTINE DESCRIBE-LEV-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Levitation">)>
<RTRUE>>
<ROUTINE LEV-WAND-F ()
<COND (<THIS-PRSI?>
@ -2999,6 +2888,13 @@ THE ,BOTTLE
<SET S -3>)>
<UPDATE-STAT .S ,STRENGTH>
<RTRUE>)
(<IN? .OBJ ,GRINDER>
<TELL CTHE ,GRINDER " retrieves the rising "
D .OBJ " with a chuckle. \"Cute.\"" CR>
<COND (<L? .S -3>
<SET S -3>)>
<UPDATE-STAT .S ,STRENGTH>
<RTRUE>)
(<IS? .OBJ ,TAKEABLE>
<SET L <LOC .OBJ>>
<TELL CTHE .OBJ>
@ -3086,11 +2982,6 @@ CR ,TAB CTHE ,CONGREG " grovels in fear and wonder." CR>)
<UPDATE-STAT .S ,STRENGTH>
<RTRUE>>
<ROUTINE DESCRIBE-BLAST-WAND (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Annihilation">)>
<RTRUE>>
<ROUTINE BLAST-WAND-F ()
<COND (<THIS-PRSI?>
@ -3161,11 +3052,6 @@ CR ,TAB CTHE ,CONGREG " grovels in fear and wonder." CR>)
" is quicker. He throws open his " 'GURDY>
<RTRUE>>
<ROUTINE DESCRIBE-DISPEL-WAND (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Dispel ">)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DISPEL-WAND-F ()
<COND (<THIS-PRSI?>
@ -4512,12 +4398,6 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
(ADJECTIVE PHEE)
(ACTION HELM-F)>
<ROUTINE DESCRIBE-HELM (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Pheehelm">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE HELM-F ("AUX" FX)
<SET FX <GETP ,HELM ,P?EFFECT>>
@ -4612,14 +4492,15 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
<RFALSE>)>>
<ROUTINE SLAY-HORSE ()
<MOVE ,DEAD-HORSE ,HERE>
<WINDOW ,SHOWING-ROOM>
<UNMAKE ,PRINCE ,NODESC>
<MOVE ,HORSE ,TRENCH>
<UNMAKE ,TRENCH ,OPENED>
<MAKE ,HORSE ,NODESC>
<UNMAKE ,HORSE ,LIVING>
<REPLACE-ADJ? ,HORSE ,W?ZZZP ,W?DEAD>
<PUTP ,HORSE ,P?ACTION ,DEAD-HORSE-F>
; <REPLACE-ADJ? ,HORSE ,W?ZZZP ,W?DEAD>
; <PUTP ,HORSE ,P?ACTION ,DEAD-HORSE-F>
<TELL
"stray arrow strikes the prince's stallion in the flank. The luckless beast shrieks piteously, stumbles into " THE ,TRENCH " and lies still." CR>
<RTRUE>>
@ -4630,18 +4511,11 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
(FLAGS SURFACE LIVING)
(CAPACITY 25)
(SYNONYM STALLION HORSE)
(ADJECTIVE GRAY GREY PRINCE\'S ZZZP)
(ADJECTIVE GRAY GREY PRINCE\'S)
(CONTFCN HORSE-F)
(DESCFCN HORSE-F)
(ACTION HORSE-F)>
<ROUTINE DESCRIBE-HORSE (OBJ)
<COND (<IS? ,HORSE ,LIVING>
<TELL B ,W?GRAY>)
(T
<TELL B ,W?DEAD>)>
<TELL C ,SP 'HORSE>
<RTRUE>>
<ROUTINE HORSE-F ("OPT" (CONTEXT <>) "AUX" X OBJ)
<COND (<T? .CONTEXT>
@ -4704,13 +4578,15 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
" and tumbles to " THE ,GROUND ,PERIOD>
<RTRUE>>
<ROUTINE DEAD-HORSE-F ("OPT" (CONTEXT <>) "AUX" X)
<COND (<T? .CONTEXT>
<COND (<EQUAL? .CONTEXT ,M-OBJDESC>
<TELL "A stallion lies dead across a nearby trench.">
<RTRUE>)>
<RFALSE>)
(<THIS-PRSI?>
<OBJECT DEAD-HORSE
(DESC "stallion")
(FLAGS NODESC TRYTAKE NOALL SURFACE)
(SYNONYM HORSE STALLION)
(ADJECTIVE DEAD GRAY GREY)
(ACTION DEAD-HORSE-F)>
<ROUTINE DEAD-HORSE-F ("AUX" X)
<COND (<THIS-PRSI?>
<COND (<VERB? THROW THROW-OVER>
<PRSO-SLIDES-OFF-PRSI>
<RTRUE>)
@ -4749,12 +4625,6 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
<VOC "MINXHOLE" NOUN>
<ROUTINE DESCRIBE-TRENCH (OBJ)
<COND (<HERE? ARCH12>
<TELL "minxhole">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE TRENCH-F ("OPT" (CONTEXT <>) "AUX" X OBJ)
<COND (<T? .CONTEXT>
@ -5595,13 +5465,6 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
(GENERIC GENERIC-KEYS-F)
(ACTION KEY3-F)>
<ROUTINE DESCRIBE-KEYS (OBJ "AUX" WORD)
<SET WORD <GET <GETPT .OBJ ,P?ADJECTIVE> 0>>
<COND (<NOT <SEE-COLOR?>>
<SET WORD ,W?GRAY>)>
<TELL B .WORD C ,SP>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE GENERIC-KEYS-F (TBL "OPT" (LEN <GET .TBL 0>))
<COND (<HERE? IN-SPLENDOR>
@ -7036,15 +6899,7 @@ B <GET ,DIR-NAMES <CREATE-MIRROR? .OBJ>> ,PERIOD>
(VALUE 2)
(NAME-TABLE <ITABLE %<+ ,NAMES-LENGTH 1> (BYTE) 0>)
(ACTION BAD-ARROW-F)>
<ROUTINE DESCRIBE-ARROW (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE ARROW-F ()
<COND (<THIS-PRSI?>
@ -8587,11 +8442,6 @@ THE ,STABLE ", where her hoofbeats quickly fade into the distance." CR>
(VALUE 30)
(ACTION CLOAK-F)>
<ROUTINE DESCRIBE-CLOAK (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Stealth">)>
<RTRUE>>
<ROUTINE CLOAK-F ("AUX" (W 0) EFX X)
<SET EFX <GETP ,CLOAK ,P?EFFECT>>
@ -8993,16 +8843,6 @@ THE ,MAMA ". It looks as if she's about to attack!" CR>
(DESCFCN PARASOL-F)
(ACTION PARASOL-F)>
<ROUTINE DESCRIBE-PARASOL (OBJ)
<COND (<IS? .OBJ ,MUNGED>
<TELL B ,W?BROKEN>)
(<IS? .OBJ ,OPENED>
<TELL B ,W?OPEN>)
(T
<TELL B ,W?CLOSED>)>
<PRINTC ,SP>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE PARASOL-F ("OPT" (CONTEXT <>) "AUX" X)
<COND (<T? .CONTEXT>
@ -9161,11 +9001,6 @@ CA ,PARASOL " dangles uncertainly from one of the ropes.">
(ADJECTIVE SUMMONING)
(ACTION WHISTLE-F)>
<ROUTINE DESCRIBE-WHISTLE (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Summoning">)>
<RTRUE>>
<GLOBAL HOOTS:NUMBER 0>
@ -9459,7 +9294,7 @@ THE ,DACT>
(LOC PLAIN1)
(DESC "butterfly")
(SDESC DESCRIBE-BFLY)
(FLAGS TAKEABLE LIVING PERSON FEMALE NAMEABLE)
(FLAGS TRYTAKE ; TAKEABLE LIVING PERSON FEMALE NAMEABLE)
(SYNONYM BUTTERFLY ZZZP FLY INSECT)
(ADJECTIVE BUTTER)
(LIFE I-BFLY)
@ -9470,20 +9305,7 @@ THE ,DACT>
(ACTION BFLY-F)>
<VOC "CATERPILLAR" NOUN>
<ROUTINE DESCRIBE-BFLY (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<COND (<NOT <IS? .OBJ ,LIVING>>
<TELL "dead ">)>
<COND (<IS? .OBJ ,MUNGED>
<PRINT "caterpillar">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE BFLY-F ("OPT" (CONTEXT <>) "AUX" (ALIVE 0) (CAT 0) X)
<SETG P-IT-OBJECT ,BFLY>
@ -9562,13 +9384,6 @@ THE ,DACT>
(NAME-TABLE 0)
(ACTION GOBLET-F)>
<ROUTINE DESCRIBE-GOBLET (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Chalice of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE GOBLET-F ("OPT" (CONTEXT <>) "AUX" (B 0) X)
<COND (<AND <IN? ,BFLY ,GOBLET>
@ -10516,11 +10331,6 @@ THE ,DACT>
(VALUE 50)
(ACTION RING-F)>
<ROUTINE DESCRIBE-RING (OBJ)
<PRINTD .OBJ>
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL " of Shielding">)>
<RTRUE>>
<ROUTINE RING-F ()
<COND (<THIS-PRSI?>
@ -10669,14 +10479,6 @@ THE ,DACT>
(NAME-TABLE <ITABLE %<+ ,NAMES-LENGTH 1> (BYTE) 0>)
(ACTION SPADE-F)>
<ROUTINE DESCRIBE-SPADE (OBJ)
<COND (<IS? .OBJ ,NAMED>
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<COND (<ZERO? ,INV-PRINTING?>
<RTRUE>)>
<TELL ,STHE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE SPADE-F ()
<COND (<THIS-PRSI?>
@ -10809,12 +10611,6 @@ THE ,DACT>
(VALUE 80)
(ACTION SCABBARD-F)>
<ROUTINE DESCRIBE-SCABBARD (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Sheath of Grueslayer">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE SCABBARD-F ("AUX" X)
<COND (<THIS-PRSI?>
@ -10953,9 +10749,6 @@ THE ,DACT>
<VOC "DIAMOND" NOUN>
<ROUTINE DESCRIBE-DIAMOND (OBJ)
<TELL B ,W?SNOWFLAKE>
<RTRUE>>
<ROUTINE DIAMOND-F ("OPT" (CONTEXT <>) "AUX" X TBL)
<COND (<T? .CONTEXT>
@ -11163,12 +10956,6 @@ THE ,DACT>
<SET X <FONT ,F-DEFAULT>>
<RFALSE>>
<ROUTINE DESCRIBE-DO-PARTAY (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Mischief">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DO-PARTAY ("OPT" (OBJ ,PRSO))
<COND (<FINE-PRINT? .OBJ>
@ -11181,12 +10968,6 @@ THE ,DACT>
". At the same moment, a housewife in a suburb of Mareilon watches in astonishment as her lawn furniture silently rearranges itself." CR>
<RTRUE>>
<ROUTINE DESCRIBE-BLESS-WEAPON (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Honing">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DO-BLESS-WEAPON ("OPT" (SCR ,PRSO) "AUX" (CNT 0) OBJ WOBJ X)
<COND (<FINE-PRINT? .SCR>
@ -11221,12 +11002,6 @@ THE ,DACT>
<TELL ,PERIOD>
<RTRUE>>
<ROUTINE DESCRIBE-BLESS-ARMOR (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Protection">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DO-BLESS-ARMOR ("OPT" (SCR ,PRSO) "AUX" (CNT 0) (NAC 0) OBJ WOBJ X)
<COND (<FINE-PRINT? .SCR>
@ -11264,12 +11039,6 @@ THE ,DACT>
<UPDATE-STAT <- .NAC <GET ,STATS ,AC>> ,AC>)>
<RTRUE>>
<ROUTINE DESCRIBE-DO-FILFRE (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Fireworks">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DO-FILFRE ("OPT" (OBJ ,PRSO))
<COND (<FINE-PRINT? .OBJ>
@ -11279,12 +11048,6 @@ THE ,DACT>
<TELL CR "The fireworks fade around you." CR>
<RTRUE>>
<ROUTINE DESCRIBE-DO-GOTO (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Recall">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DO-GOTO ("OPT" (OBJ ,PRSO))
<COND (<FINE-PRINT? .OBJ>
@ -11393,29 +11156,6 @@ THE ,DACT>
<GOTO .L>
<RTRUE>>
<ROUTINE DESCRIBE-TOWER-SCROLL (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies half-hidden in ">
<TELL "shadow.">
<RTRUE>>
<ROUTINE DESCRIBE-FOREST-SCROLL (CONTEXT)
<TELL CA ,DESCING>
<PRINT " lies forgotten in ">
<TELL "the underbrush.">
<RTRUE>>
<ROUTINE DESCRIBE-PLAIN-SCROLL (CONTEXT)
<TELL CA ,DESCING " is blowing against a clump of grass.">
<RTRUE>>
<ROUTINE DESCRIBE-MOOR-SCROLL (CONTEXT)
<TELL CA ,DESCING " lies trodden in the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-JUNGLE-SCROLL (CONTEXT)
<TELL "The undergrowth nearly conceals " A ,DESCING C ,PER>
<RTRUE>>
<ROUTINE FINE-PRINT? ("OPT" (OBJ ,PRSO))
<COND (<NOT <VISIBLE? .OBJ>>
@ -11480,16 +11220,6 @@ THE ,DACT>
(DESCFCN RENEWAL-DESC)
(ACTION HANDLE-SCROLL-F)>
<ROUTINE DESCRIBE-RENEWAL (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Renewal">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE RENEWAL-DESC (CONTEXT)
<TELL CA ,RENEWAL " lies trampled in the dust.">
<RTRUE>>
<ROUTINE DO-RENEWAL ("OPT" (OBJ ,PRSO) "AUX" STAT MAX OLD)
<COND (<FINE-PRINT? .OBJ>
@ -11575,6 +11305,7 @@ THE ,DACT>
<DEQUEUE ,I-PILLAR>
<QUEUE ,I-BFLY>
<UNMAKE ,BFLY ,MUNGED>
<UNMAKE ,BFLY ,TAKEABLE>
<REPLACE-SYN? ,BFLY ,W?CATERPILLAR ,W?BUTTERFLY>
<REPLACE-SYN? ,BFLY ,W?ZZZP ,W?FLY>
<REPLACE-ADJ? ,BFLY ,W?ZZZP ,W?BUTTER>)>)>
@ -11643,6 +11374,7 @@ THE ,DACT>
<DEQUEUE ,I-BFLY>
<QUEUE ,I-PILLAR>)>
<MAKE ,BFLY ,MUNGED>
<MAKE ,BFLY ,TAKEABLE>
<REPLACE-SYN? ,BFLY ,W?BUTTERFLY ,W?CATERPILLAR>
<REPLACE-SYN? ,BFLY ,W?FLY ,W?ZZZP>
<REPLACE-ADJ? ,BFLY ,W?BUTTER ,W?ZZZP>
@ -11665,13 +11397,7 @@ THE ,DACT>
(DNUM "transcendental physics")
(EFFECT DO-GATE)
(ACTION HANDLE-SCROLL-F)>
<ROUTINE DESCRIBE-PALIMP (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "scroll of Gating">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<GLOBAL PALIMP-CHARGES:NUMBER 5>
@ -12702,13 +12428,6 @@ THE ,DACT>
(NAME-TABLE 0)
(ACTION STONE-F)>
<ROUTINE DESCRIBE-STONE (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "Scrystone of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<GLOBAL VISION:NUMBER 0>
@ -12815,17 +12534,6 @@ THE ,DACT>
<REFRESH-MAP>
<RTRUE>>
<ROUTINE DESCRIBE-WALL (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<COND (<EQUAL? .OBJ ,NWALL>
<TELL "Nor">)
(T
<TELL "Sou">)>
<TELL "th Wall of ">
<PRINT-TABLE <GETP .OBJ ,P?NAME-TABLE>>
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<OBJECT DIARY
(LOC BENCH)
@ -13192,53 +12900,20 @@ THE ,DACT>
(DESCFCN 0)
(ACTION 0)>
<ROUTINE DESCRIBE-IQ-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Enlightenment">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE IQ-POTION-F ()
<RETURN <HANDLE-POTION? ,I-IQ>>>
<ROUTINE DESCRIBE-HEALING-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Healing">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE HEALING-POTION-F ()
<RETURN <HANDLE-POTION? ,I-HEAL>>>
<ROUTINE DESCRIBE-DEATH-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Death">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE DEATH-POTION-F ()
<RETURN <HANDLE-POTION? ,I-DEATH>>>
<ROUTINE DESCRIBE-MIGHT-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Might">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE MIGHT-POTION-F ()
<RETURN <HANDLE-POTION? ,I-MIGHT>>>
<ROUTINE DESCRIBE-FORGET-POTION (OBJ)
<COND (<IS? .OBJ ,IDENTIFIED>
<TELL "potion of Forgetfulness">
<RTRUE>)>
<PRINTD .OBJ>
<RTRUE>>
<ROUTINE FORGET-POTION-F ()
<RETURN <HANDLE-POTION? ,I-FORGET>>>
@ -13261,17 +12936,6 @@ THE ,DACT>
; <SAY-ERROR "NEXT-POTION?">
<RFALSE>)>>
<ROUTINE DESCRIBE-MOOR-POTION (CONTEXT)
<TELL "Some luckless fool has left " A ,DESCING
" in the mud.">
<RTRUE>>
<ROUTINE DESCRIBE-RUINS-POTION (CONTEXT)
<TELL "Someone else must have been here recently. There's "
A ,DESCING>
<PRINT " lying in the dust.">
<RTRUE>>
<ROUTINE HANDLE-POTION? (INT)
<COND (<THIS-PRSI?>
<COND (<VERB? POUR-FROM>

182
verbs.zil
View File

@ -1221,6 +1221,7 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
<ROUTINE CANT-SAVE? ("AUX" OBJ NXT X)
<COND (<T? ,CHOKE>
<MUMBLAGE ,SKELETON>
<RTRUE>)
(<SET OBJ <FIRST? ,HERE>>
<REPEAT ()
@ -4021,8 +4022,9 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
(DESC "foo")
(SDESC DESCRIBE-MONEY)
(FLAGS NODESC NOARTICLE NOALL)
(SYNONYM MONEY ZORKMIDS ZORKMID ZM CASH LOOT ASSETS COINS COIN)
(ADJECTIVE INTNUM MY)
(SYNONYM MONEY ZORKMIDS ZORKMID ZM CASH LOOT
ASSETS COINS COIN CREDIT LINE)
(ADJECTIVE INTNUM MY PERSONAL CREDIT)
(ACTION MONEY-F)>
<GLOBAL LOOT:NUMBER 1>
@ -5052,6 +5054,7 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
<SPLIT 22>
<TO-TOP-WINDOW>
<DO-CURSET .TOP <+ .LMARGIN 18>>
<COLOR ,FORE ,BGND>
<TELL "Display Settings">
<SET LINE 0>
@ -5194,7 +5197,10 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
(<EQUAL? ,PRIOR ,SHOWING-ROOM>
<SETG PRIOR ,SHOWING-INV>
<SETG IN-DBOX ,SHOWING-INV>)
(<EQUAL? ,PRIOR ,SHOWING-INV>
(<AND <EQUAL? ,PRIOR
,SHOWING-INV>
<NOT <EQUAL? ,STAT-ROUTINE
,BAR-NUMBER>>>
<SETG PRIOR ,SHOWING-STATS>
<SETG IN-DBOX ,SHOWING-STATS>)
(T
@ -5205,14 +5211,20 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
<SETG VERBOSITY 2>)>)
(<EQUAL? .LINE 5>
<COND (<ZERO? ,PRIOR>
<SETG PRIOR ,SHOWING-STATS>
<SETG IN-DBOX ,SHOWING-STATS>)
<SETG PRIOR ,SHOWING-STATS>
<SETG IN-DBOX ,SHOWING-STATS>
<COND (<EQUAL? ,STAT-ROUTINE
,BAR-NUMBER>
<SETG PRIOR ,SHOWING-INV>
<SETG IN-DBOX
,SHOWING-INV>)>)
(<EQUAL? ,PRIOR ,SHOWING-ROOM>
<SETG PRIOR 0>)
(<EQUAL? ,PRIOR ,SHOWING-INV>
<SETG PRIOR ,SHOWING-ROOM>
<SETG IN-DBOX ,SHOWING-ROOM>)
(T
(<NOT <EQUAL? ,STAT-ROUTINE
,BAR-NUMBER>>
<SETG PRIOR ,SHOWING-INV>
<SETG IN-DBOX ,SHOWING-INV>)>)>)>
<RETURN>)>
@ -5225,120 +5237,136 @@ A ,SHAPE ", stretched across your path like the skin of a drum." CR>
<DO-CURSET <+ <* .LINE 2> .TOP> .X>
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<COLOR ,GCOLOR ,BGND>
<COLOR ,FORE ,BGND>
<COND (<T? .HL>
<HLIGHT ,H-INVERSE>
<COND (<AND <T? ,COLORS?>
<NOT <EQUAL? ,FORE ,GCOLOR>>>
<COLOR ,FORE ,BGND>)>)
(<AND <T? ,COLORS?>
<NOT <EQUAL? ,FORE ,GCOLOR>>>
<HLIGHT ,H-INVERSE>)>
<TO-GCOLOR <GET ,SNAMES .LINE>>
<PRINT <GET ,SNAMES .LINE>>
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<EQUAL? .LINE 7 8>
<RTRUE>)
(<ZERO? .LINE>
<COND (<T? ,DMODE>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Enhanced ">
<HLIGHT ,H-INVERSE>)>
<TELL " Enhanced ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Standard ">
<HLIGHT ,H-INVERSE>)>
<TELL " Standard ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(<EQUAL? .LINE 1>
<COND (<ZERO? ,VERBOSITY>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Superbrief ">
<HLIGHT ,H-INVERSE>)>
<TELL " Superbrief ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<EQUAL? ,VERBOSITY 1>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Brief ">
<HLIGHT ,H-INVERSE>)>
<TELL " Brief ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<EQUAL? ,VERBOSITY 2>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Verbose ">
<HLIGHT ,H-INVERSE>)>
<TELL " Verbose ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(<EQUAL? .LINE 2>
<SET X <BAND <LOWCORE FLAGS> 1>>
<COND (<ZERO? .X>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Off ">
<HLIGHT ,H-INVERSE>)>
<TELL " Off ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<T? .X>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " On ">
<HLIGHT ,H-INVERSE>)>
<TELL " On ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(<EQUAL? .LINE 3>
<COND (<ZERO? ,SAY-STAT>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Off ">
<HLIGHT ,H-INVERSE>)>
<TELL " Off ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<T? ,SAY-STAT>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " On ">
<HLIGHT ,H-INVERSE>)>
<TELL " On ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(<EQUAL? .LINE 4>
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,MAP-ROUTINE ,CLOSE-MAP>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Normal ">
<HLIGHT ,H-INVERSE>)>
<TELL " Normal ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,MAP-ROUTINE ,FAR-MAP>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Wide ">)
<HLIGHT ,H-INVERSE>)>
<TELL " Wide ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(<EQUAL? .LINE 5>
<COND (<ZERO? ,DMODE>)
(<ZERO? ,PRIOR>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Off ">
<HLIGHT ,H-INVERSE>)>
<TELL " Off ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,PRIOR ,SHOWING-ROOM>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Room ">
<HLIGHT ,H-INVERSE>)>
<TELL " Room ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,PRIOR ,SHOWING-INV>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Inventory ">
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,PRIOR ,SHOWING-STATS>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Status ">
<HLIGHT ,H-INVERSE>)>
<TELL " Inventory ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<COND (<NOT <EQUAL? ,STAT-ROUTINE ,BAR-NUMBER>>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>)
(<EQUAL? ,PRIOR ,SHOWING-STATS>
<HLIGHT ,H-INVERSE>)>
<TELL " Status ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>)>
<RTRUE>)
(<EQUAL? .LINE 6>
<COND (<ZERO? ,DMODE>)
(<T? ,AUTO>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Automatic ">
<HLIGHT ,H-INVERSE>)>
<TELL " Automatic ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<ZERO? ,DMODE>)
(<ZERO? ,AUTO>
<HLIGHT ,H-INVERSE>
<COLOR ,FORE ,BGND>)>
<TO-GCOLOR " Off ">
<HLIGHT ,H-INVERSE>)>
<TELL " Off ">
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<RTRUE>)
(T
<RFALSE>)>>
<ROUTINE TO-GCOLOR (STR)
<PRINT .STR>
<COLOR ,GCOLOR ,BGND>
<HLIGHT ,H-NORMAL>
<HLIGHT ,H-MONO>
<PRINTC ,SP>
<COND (<AND <T? ,COLORS?>
<NOT <EQUAL? ,FORE ,GCOLOR>>>
<HLIGHT ,H-INVERSE>)>
<RFALSE>>

8
z.zil
View File

@ -8,8 +8,10 @@ Beyond ZORK: The Coconut of Quendor
<VERSION XZIP>
<FREQUENT-WORDS?>
<SETG DISPLAY-OPS? T>
<SETG USE-UNDO? T>
<ZIP-OPTIONS MOUSE UNDO COLOR DISPLAY>
; <SETG DISPLAY-OPS? T>
; <SETG USE-UNDO? T>
<ORDER-OBJECTS? ROOMS-FIRST>
@ -20,7 +22,7 @@ DISABLE!-INITIAL
<SET REDEFINE T>
<PUTPROP DIRECTIONS PROPSPEC!-IZILCH>
<PUTPROP DIRECTIONS PROPSPEC>
<DIRECTIONS NORTH NE EAST SE SOUTH SW WEST NW UP DOWN IN OUT>

BIN
z.zip Normal file

Binary file not shown.