zorkzero/chess.zabstr

144 lines
7.2 KiB
Plaintext

<BEGIN-SEGMENT FENSHIRE>
<GLOBAL RANK 2>
<GLOBAL FILE 5>
<GLOBAL PLAIN-LOC 12>
<ROOM PLAIN (LOC ROOMS) (REGION "Region: Unknown") (DESC "Plain") (NORTH PER
PLAIN-MOVEMENT-F) (NE PER PLAIN-MOVEMENT-F) (EAST PER PLAIN-MOVEMENT-F) (SE PER
PLAIN-MOVEMENT-F) (SOUTH PER PLAIN-MOVEMENT-F) (SW PER PLAIN-MOVEMENT-F) (WEST
PER PLAIN-MOVEMENT-F) (NW PER PLAIN-MOVEMENT-F) (FLAGS RLANDBIT OUTSIDEBIT
ONBIT) (VALUE 16) (ACTION PLAIN-F)>
<DEFINE-ROUTINE PLAIN-F>
<DEFINE-ROUTINE PLAIN-MOVEMENT-F>
<OBJECT BLACK-KNIGHT (DESC "mounted soldier") (LDESC
"There is a soldier on horseback here. His armor is made of the dullest
metals, and his steed is darker than the night.") (SYNONYM SOLDIER KNIGHT HORSE
MAN) (ADJECTIVE MOUNTED BLACK) (FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT
BLACKBIT) (ACTION PIECE-F)>
<OBJECT WHITE-KNIGHT (DESC "mounted soldier") (LDESC
"There is a soldier on horseback here. His armor is made of the shiniest
metals, and his steed is lighter than drifted snow.") (SYNONYM SOLDIER KNIGHT
HORSE MAN) (ADJECTIVE MOUNTED WHITE) (FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT
WHITEBIT) (ACTION PIECE-F)>
<OBJECT BLACK-PAWN (DESC "foot soldier") (LDESC
"You spot a solitary, bored-looking foot soldier. His face is smudged with
coal dust, his uniform is sewn from deeply dyed wool, and the handle of his
sword is solid obsidian.") (SYNONYM SOLDIER PAWN MAN) (ADJECTIVE FOOT BLACK) (
FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT BLACKBIT) (ACTION PIECE-F)>
<OBJECT BLACK-QUEEN (DESC "queen") (LDESC
"A regal woman proudly surveys the landscape in all directions. Her skin
is dark; her royal garments even darker.") (SYNONYM QUEEN WOMAN) (ADJECTIVE
REGAL PROUD DARK BLACK) (FLAGS ACTORBIT FEMALEBIT CONTBIT OPENBIT SEARCHBIT
BLACKBIT) (ACTION PIECE-F)>
<OBJECT WHITE-CASTLE (DESC "man atop a castle tower") (LDESC
"Nearby rises a small tower keep, made of creamy marble. Between the
crenellations of the parapet you spot a man, dressed in an ivory chain
mail and carrying a crossbow made of birch.") (SYNONYM MAN TOWER CASTLE ROOK) (
ADJECTIVE CASTLE WHITE) (FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT WHITEBIT) (
ACTION PIECE-F)>
<OBJECT BLACK-BISHOP (DESC "high priest") (LDESC
"You hear a sing-song prayer chant and turn to see a high priest of some sort.
His tall, ebony headpiece bears a religious cipher, and his vestments seem to
soak up all light.") (SYNONYM PRIEST BISHOP MAN) (ADJECTIVE HIGH BLACK) (FLAGS
ACTORBIT CONTBIT OPENBIT SEARCHBIT BLACKBIT) (ACTION PIECE-F)>
<OBJECT WHITE-PAWN (DESC "foot soldier") (LDESC
"You spot a solitary, bored-looking foot soldier. His face is smudged with
flour, his uniform is sewn from pure undyed cotton, and the handle of his
sword is solid quartz.") (SYNONYM SOLDIER PAWN MAN) (ADJECTIVE WHITE FOOT) (
FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT WHITEBIT) (ACTION PIECE-F)>
<OBJECT WHITE-QUEEN (DESC "queen") (LDESC
"A regal woman proudly surveys the landscape in all directions. Her royal
garments are as white as her pale complexion.") (SYNONYM QUEEN WOMAN) (
ADJECTIVE REGAL PROUD WHITE) (FLAGS ACTORBIT FEMALEBIT CONTBIT OPENBIT
SEARCHBIT WHITEBIT) (ACTION PIECE-F)>
<OBJECT WHITE-KING (DESC "royal leader") (LDESC
"A tall man wearing princely robes stands nearby. His bearing indicates that
this is a man accustomed to command. His linen robes are trimmed with ermine,
and his crown is studded with diamonds and opals.") (SYNONYM LEADER KING MAN) (
ADJECTIVE ROYAL WHITE TALL) (FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT WHITEBIT)
(ACTION PIECE-F)>
<OBJECT WHITE-KING-CROWN (LOC WHITE-KING) (DESC "crown") (SYNONYM CROWN) (FLAGS
NDESCBIT)>
<OBJECT WHITE-KING-ROBE (LOC WHITE-KING) (DESC "robe") (SYNONYM ROBE) (FLAGS
NDESCBIT)>
<OBJECT BLACK-KING (DESC "royal leader") (LDESC
"A tall man wearing princely robes stands nearby. His bearing indicates that
this is a man accustomed to command. His velvet robes are trimmed with mink,
and his crown is studded with polished onyx.") (SYNONYM LEADER KING MAN) (
ADJECTIVE ROYAL BLACK TALL) (FLAGS ACTORBIT CONTBIT OPENBIT SEARCHBIT BLACKBIT)
(ACTION PIECE-F)>
<OBJECT BLACK-KING-ROBE (LOC BLACK-KING) (DESC "robe") (SYNONYM ROBE) (FLAGS
NDESCBIT)>
<OBJECT BLACK-KING-CROWN (LOC BLACK-KING) (DESC "crown") (SYNONYM CROWN) (FLAGS
NDESCBIT)>
<BEGIN-SEGMENT 0>
<GLOBAL DIR-CNT 0>
<DEFINE-ROUTINE PIECE-F>
<DEFINE-ROUTINE PIECE-TAKES-PIGEON>
<CONSTANT PIECE-MOVE-TABLE <TABLE 0 0 0 0 0 0 0 0>>
<DEFINE-ROUTINE MOVE-PIECE>
<DEFINE-ROUTINE DIR-TO-STRING>
<DEFINE-ROUTINE PIECE-SNARF>
<DEFINE-ROUTINE TAKE-PIECE?>
<DEFINE-ROUTINE ILLEGAL-MOVE?>
<DEFINE-ROUTINE PIECE-AT-NEW-LOC?>
<DEFINE-ROUTINE OBSTRUCTION>
<END-SEGMENT>
<BEGIN-SEGMENT LOWER>
<ROOM FIELD-OFFICE (LOC ROOMS) (DESC "Field Office") (REGION "Flatheadia") (
LDESC "This is a temporary headquarters for a construction site to the west.
Another exit leads east.") (EAST TO EXIT) (WEST PER CONSTRUCTION-ENTER-F) (
FLAGS RLANDBIT UNDERGROUNDBIT) (MAP-LOC <PTABLE LOWER-LEVEL-MAP-NUM MAP-GEN-Y-7
MAP-GEN-X-4>)>
<DEFINE-ROUTINE CONSTRUCTION-ENTER-F>
<OBJECT BLUEPRINT (LOC FIELD-OFFICE) (DESC "blueprint") (SYNONYM BLUEPRINT) (
FLAGS TAKEBIT BURNBIT READBIT) (SIZE 2) (TEXT
"[This is the blueprint from your ZORK ZERO package.]")>
<BEGIN-SEGMENT 0>
<OBJECT HAMMER (DESC "hammer") (SYNONYM HAMMER) (FLAGS TAKEBIT) (SIZE 16) (
ACTION HAMMER-F)>
<DEFINE-ROUTINE HAMMER-F>
<END-SEGMENT>
<BEGIN-SEGMENT LOWER>
<ROOM CONSTRUCTION (LOC ROOMS) (DESC "Construction") (REGION "Flatheadia") (
NORTH PER CONSTRUCTION-MOVEMENT-F) (NE PER CONSTRUCTION-MOVEMENT-F) (EAST PER
CONSTRUCTION-MOVEMENT-F) (SE PER CONSTRUCTION-MOVEMENT-F) (SOUTH PER
CONSTRUCTION-MOVEMENT-F) (SW PER CONSTRUCTION-MOVEMENT-F) (WEST PER
CONSTRUCTION-MOVEMENT-F) (NW PER CONSTRUCTION-MOVEMENT-F) (FLAGS RLANDBIT
UNDERGROUNDBIT) (ACTION CONSTRUCTION-F)>
<DEFINE-ROUTINE CONSTRUCTION-F>
<DEFINE-ROUTINE AND-OR-COMMA>
<DEFINE-ROUTINE CONSTRUCTION-MOVEMENT-F>
<GLOBAL CONSTRUCTION-LOC 47>
<CONSTANT NORTH-EXITS <TABLE 99 20 33 37 40 46 48 50 55 59 61>>
<CONSTANT NE-EXITS <TABLE 12 13 14 20 22 27 28 29 33 36 41 43 46 49 50 53 54>>
<CONSTANT EAST-EXITS <TABLE 5 6 12 22 26 30 34 38 42 44 51 56 57 61 62>>
<CONSTANT SE-EXITS <TABLE 99 17 40 43 48 51 54>>
<OBJECT HARDHAT (DESC "hardhat") (SYNONYM HARDHAT HAT) (ADJECTIVE HARD) (FLAGS
TAKEBIT WEARBIT) (GENERIC G-HAT-F) (VALUE 25)>
<BEGIN-SEGMENT 0>
<DEFINE-ROUTINE REMOVE-ANY-PIECE>
<CONSTANT STORAGE-TABLE <TABLE 301 BLACK-KNIGHT 314 BLACK-PAWN 315 WHITE-KNIGHT
328 BLACK-BISHOP 337 BLACK-KING 349 WHITE-PAWN 357 WHITE-KING 363 WHITE-CASTLE
400 HARDHAT 461 HAMMER 1004 MEMO 3019 T-SQUARE 4193 INSTRUCTION-BOOKLET 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 PLAIN-OFFSET 300>
<CONSTANT CONSTRUCTION-OFFSET 400>
<CONSTANT OFFICES-OFFSET 1000>
<CONSTANT OFFICES-N-OFFSET 2000>
<CONSTANT OFFICES-S-OFFSET 3000>
<CONSTANT OFFICES-E-OFFSET 4000>
<CONSTANT OFFICES-W-OFFSET 5000>
<CONSTANT STORAGE-TABLE-LENGTH 200>
<DEFINE-ROUTINE PUT-IN-STORAGE>
<END-SEGMENT>
<BEGIN-SEGMENT LOWER>
<BEGIN-SEGMENT FENSHIRE>
<BEGIN-SEGMENT VILLAGE>
<DEFINE-ROUTINE STORE>
<DEFINE-ROUTINE UNSTORE>
<END-SEGMENT>