-
Notifications
You must be signed in to change notification settings - Fork 15
/
montana.zabstr
134 lines (133 loc) · 7.28 KB
/
montana.zabstr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<FLAGS-AND-DEFAULTS (("WORD-FLAGS-IN-TABLE" T)) ()>
<ROOM RM-MIDSHIP-HATCH (LOC ROOMS) (DESC "midship hatch") (FLAGS FL-LIGHTED
FL-WATER) (UP TO RM-TROUGH-LIP) (EAST TO RM-TROUGH-LIP) (FORE TO
RM-MISSILE-HATCH) (NORTH TO RM-MISSILE-HATCH) (WEST TO RM-ATTACK-CENTER IF
LG-MIDSHIP-HATCH IS OPEN) (IN TO RM-ATTACK-CENTER IF LG-MIDSHIP-HATCH IS OPEN)
(DOWN PER RT-TO-TRENCH-BOTTOM) (GLOBAL LG-MIDSHIP-HATCH LG-MONTANA LG-TROUGH
RM-ATTACK-CENTER) (ACTION RT-RM-MIDSHIP-HATCH)>
<DEFINE-ROUTINE RT-RM-MIDSHIP-HATCH>
<OBJECT LG-MIDSHIP-HATCH (LOC LOCAL-GLOBALS) (DESC "midship hatch") (FLAGS
FL-DOOR) (SYNONYM HATCH) (ADJECTIVE MIDSHIP) (ACTION RT-LG-MIDSHIP-HATCH)>
<DEFINE-ROUTINE RT-LG-MIDSHIP-HATCH>
<DEFINE-ROUTINE RT-TO-TRENCH-BOTTOM>
<ROOM RM-MISSILE-HATCH (LOC ROOMS) (DESC "missile hatch") (FLAGS FL-LIGHTED
FL-WATER) (SYNONYM HATCH) (ADJECTIVE MISSILE) (FORE TO RM-BOW) (AFT TO
RM-MIDSHIP-HATCH) (GLOBAL LG-MONTANA LG-TROUGH RM-MISSILE-ROOM) (ACTION
RT-RM-MISSILE-HATCH)>
<DEFINE-ROUTINE RT-RM-MISSILE-HATCH>
<OBJECT TH-MISSILE (LOC RM-MISSILE-HATCH) (DESC "missile") (FLAGS FL-NO-DESC
FL-SURFACE FL-SEARCH) (SYNONYM MISSILE) (ACTION RT-TH-MISSILE)>
<DEFINE-ROUTINE RT-TH-MISSILE>
<OBJECT TH-MISSILE-TIMER (LOC TH-MISSILE) (DESC "timer") (FLAGS FL-NO-DESC) (
SYNONYM TIMER) (ADJECTIVE MISSILE) (ACTION RT-TH-MISSILE-TIMER)>
<DEFINE-ROUTINE RT-TH-MISSILE-TIMER>
<OBJECT TH-MISSILE-PANEL (LOC TH-MISSILE) (DESC "access panel") (FLAGS
FL-CONTAINER FL-LOCKED FL-OPENABLE FL-SEARCH) (SYNONYM PANEL HATCH PLATE) (
ADJECTIVE MISSILE ACCESS COVER) (ACTION RT-TH-MISSILE-PANEL)>
<DEFINE-ROUTINE RT-TH-MISSILE-PANEL>
<NEW-ADD-WORD "WIRES" NOUN <VOC "WIRE"> ,PLURAL-FLAG>
<GLOBAL GL-WIRE-SEQUENCE 0 <> BYTE>
<GLOBAL GL-WIRES-CUT 0>
<OBJECT TH-WIRES (LOC TH-MISSILE-PANEL) (DESC "wires") (FLAGS FL-NO-DESC) (
SYNONYM WIRES) (ACTION RT-TH-WIRES)>
<DEFINE-ROUTINE RT-TH-WIRES>
<OBJECT TH-RED-WIRE (LOC TH-MISSILE-PANEL) (DESC "red wire") (SYNONYM WIRE) (
ADJECTIVE RED) (ACTION RT-TH-WIRE)>
<OBJECT TH-BLUE-WIRE (LOC TH-MISSILE-PANEL) (DESC "blue wire") (SYNONYM WIRE) (
ADJECTIVE BLUE) (ACTION RT-TH-WIRE)>
<OBJECT TH-GREEN-WIRE (LOC TH-MISSILE-PANEL) (DESC "green wire") (SYNONYM WIRE)
(ADJECTIVE GREEN) (ACTION RT-TH-WIRE)>
<OBJECT TH-YELLOW-WIRE (LOC TH-MISSILE-PANEL) (DESC "yellow wire") (SYNONYM
WIRE) (ADJECTIVE YELLOW) (ACTION RT-TH-WIRE)>
<OBJECT TH-ORANGE-WIRE (LOC TH-MISSILE-PANEL) (DESC "orange wire") (SYNONYM
WIRE) (ADJECTIVE ORANGE) (ACTION RT-TH-WIRE)>
<OBJECT TH-WHITE-WIRE (LOC TH-MISSILE-PANEL) (DESC "white wire") (SYNONYM WIRE)
(ADJECTIVE WHITE) (ACTION RT-TH-WIRE)>
<DEFINE-ROUTINE RT-TH-WIRE>
<DEFINE-ROUTINE RT-CORRECT-WIRE?>
<OBJECT TH-WIRE-CUTTERS (LOC TH-ELEC-SHOP-DRAWER) (DESC "wire cutters") (FLAGS
FL-TAKEABLE FL-KNIFE) (SYNONYM CUTTERS) (ADJECTIVE WIRE) (ACTION
RT-TH-WIRE-CUTTERS)>
<DEFINE-ROUTINE RT-TH-WIRE-CUTTERS>
<GLOBAL GL-FALLING-INTO-TRENCH? <> <> BYTE>
<DEFINE-ROUTINE RT-I-INTO-TRENCH-1>
<DEFINE-ROUTINE RT-I-INTO-TRENCH-2>
<DEFINE-ROUTINE RT-I-OUT-OF-AIR-1>
<DEFINE-ROUTINE RT-I-OUT-OF-AIR-2>
<ROOM RM-BOW (LOC ROOMS) (DESC "bow") (FLAGS FL-LIGHTED FL-WATER) (SYNONYM BOW)
(AFT TO RM-MISSILE-HATCH) (WEST TO RM-TORPEDO-ROOM) (IN TO RM-TORPEDO-ROOM) (
GLOBAL LG-MONTANA LG-TROUGH RM-MISSILE-HATCH) (ACTION RT-RM-BOW)>
<DEFINE-ROUTINE RT-RM-BOW>
<ROOM RM-TORPEDO-ROOM (LOC ROOMS) (DESC "torpedo room") (FLAGS FL-INDOORS
FL-LIGHTED FL-WATER) (SYNONYM ROOM) (ADJECTIVE TORPEDO) (EAST TO RM-BOW) (OUT
TO RM-BOW) (AFT TO RM-ENGINE-ROOM) (GLOBAL LG-WALL LG-MONTANA RM-BOW
RM-ENGINE-ROOM) (ACTION RT-RM-TORPEDO-ROOM)>
<DEFINE-ROUTINE RT-RM-TORPEDO-ROOM>
<ROOM RM-ENGINE-ROOM (LOC ROOMS) (DESC "engine room") (FLAGS FL-INDOORS
FL-LIGHTED FL-WATER) (SYNONYM ROOM) (ADJECTIVE ENGINE) (FORE TO RM-TORPEDO-ROOM
) (AFT TO RM-MISSILE-ROOM) (GLOBAL LG-WALL LG-MONTANA RM-TORPEDO-ROOM
RM-MISSILE-ROOM) (ACTION RT-RM-ENGINE-ROOM)>
<DEFINE-ROUTINE RT-RM-ENGINE-ROOM>
<ROOM RM-MISSILE-ROOM (LOC ROOMS) (DESC "missile launching room") (FLAGS
FL-INDOORS FL-LIGHTED FL-WATER) (SYNONYM ROOM) (ADJECTIVE MISSILE LAUNCHING) (
FORE TO RM-ENGINE-ROOM) (GLOBAL LG-WALL LG-MONTANA RM-ENGINE-ROOM) (ACTION
RT-RM-MISSILE-ROOM)>
<DEFINE-ROUTINE RT-RM-MISSILE-ROOM>
<OBJECT TH-MISSILE-ACCESS-KEY (LOC RM-MISSILE-ROOM) (DESC "access key") (FLAGS
FL-KEY FL-TAKEABLE) (SYNONYM KEY) (ADJECTIVE MISSILE ACCESS) (ACTION
RT-TH-MISSILE-ACCESS-KEY)>
<DEFINE-ROUTINE RT-TH-MISSILE-ACCESS-KEY>
<ROOM RM-ATTACK-CENTER (LOC ROOMS) (DESC "attack center") (FLAGS FL-INDOORS
FL-LIGHTED FL-WATER) (SYNONYM CENTER) (ADJECTIVE ATTACK) (EAST TO
RM-MIDSHIP-HATCH IF LG-MIDSHIP-HATCH IS OPEN) (OUT TO RM-MIDSHIP-HATCH IF
LG-MIDSHIP-HATCH IS OPEN) (AFT TO RM-SONAR-ROOM) (GLOBAL LG-MIDSHIP-HATCH
LG-WALL LG-MONTANA RM-SONAR-ROOM) (ACTION RT-RM-ATTACK-CENTER)>
<DEFINE-ROUTINE RT-RM-ATTACK-CENTER>
<ROOM RM-SONAR-ROOM (LOC ROOMS) (DESC "sonar room") (FLAGS FL-INDOORS
FL-LIGHTED FL-WATER) (SYNONYM SHACK) (ADJECTIVE SONAR) (FORE TO
RM-ATTACK-CENTER) (AFT TO RM-COMM-ROOM) (GLOBAL LG-WALL LG-MONTANA
RM-ATTACK-CENTER RM-COMM-ROOM) (ACTION RT-RM-SONAR-ROOM)>
<DEFINE-ROUTINE RT-RM-SONAR-ROOM>
<ROOM RM-COMM-ROOM (LOC ROOMS) (DESC "comm room") (FLAGS FL-INDOORS FL-LIGHTED
FL-WATER) (SYNONYM ROOM) (ADJECTIVE COMM COMMUNICATIONS) (FORE TO RM-SONAR-ROOM
) (AFT PER RT-THRU-BUCKLED-DOOR) (GLOBAL LG-BUCKLED-DOOR LG-WALL LG-MONTANA
RM-SONAR-ROOM RM-SUB-CORRIDOR) (ACTION RT-RM-COMM-ROOM)>
<DEFINE-ROUTINE RT-RM-COMM-ROOM>
<DEFINE-ROUTINE RT-THRU-BUCKLED-DOOR>
<OBJECT LG-BUCKLED-DOOR (LOC LOCAL-GLOBALS) (DESC "door") (FLAGS FL-DOOR
FL-OPENABLE) (SYNONYM DOOR) (ADJECTIVE BUCKLED JAMMED) (ACTION
RT-LG-BUCKLED-DOOR)>
<DEFINE-ROUTINE RT-LG-BUCKLED-DOOR>
<ROOM RM-SUB-CORRIDOR (LOC ROOMS) (DESC "corridor") (FLAGS FL-INDOORS
FL-LIGHTED FL-WATER) (SYNONYM CORRIDOR) (FORE TO RM-COMM-ROOM) (DOWN TO
RM-CAPTAINS-ROOM) (GLOBAL LG-WALL LG-MONTANA RM-COMM-ROOM RM-CAPTAINS-ROOM) (
ACTION RT-RM-SUB-CORRIDOR)>
<GLOBAL GL-CORRIDOR-BLOCKED? T <> BYTE>
<DEFINE-ROUTINE RT-RM-SUB-CORRIDOR>
<ROOM RM-CAPTAINS-ROOM (LOC ROOMS) (DESC "captain's quarters") (FLAGS
FL-INDOORS FL-LIGHTED FL-WATER) (SYNONYM QUARTERS ROOM STATEROOM) (ADJECTIVE
CAPTAIN STATE!-LALRDEFS!-PACKAGE) (UP TO RM-SUB-CORRIDOR) (GLOBAL LG-WALL
LG-MONTANA RM-SUB-CORRIDOR) (ACTION RT-RM-CAPTAINS-ROOM)>
<DEFINE-ROUTINE RT-RM-CAPTAINS-ROOM>
<OBJECT TH-PHOTOGRAPH (LOC RM-CAPTAINS-ROOM) (DESC "photograph") (FLAGS
FL-NO-DESC) (SYNONYM PHOTOGRAPH PICTURE FRAME) (ADJECTIVE FRAMED) (ACTION
RT-TH-PHOTOGRAPH)>
<DEFINE-ROUTINE RT-TH-PHOTOGRAPH>
<OBJECT TH-SAFE (LOC RM-CAPTAINS-ROOM) (DESC "safe") (FLAGS FL-CONTAINER
FL-LOCKED FL-NO-DESC FL-OPENABLE FL-SEARCH) (SYNONYM SAFE DIAL) (ADJECTIVE WALL
) (ACTION RT-TH-SAFE)>
<GLOBAL GL-SAFE-NUM 0 <> BYTE>
<DEFINE-ROUTINE RT-TH-SAFE>
<OBJECT TH-PLASTIC-CARD (LOC TH-SAFE) (DESC "plastic card") (FLAGS FL-READABLE
FL-TAKEABLE) (SYNONYM CARD CODE CODES) (ADJECTIVE PLASTIC WIRING) (ACTION
RT-TH-PLASTIC-CARD)>
<DEFINE-ROUTINE RT-TH-PLASTIC-CARD>
<OBJECT TH-PLASTIQUE (LOC RM-DRILL-ROOM) (DESC "plastique") (FLAGS FL-SURFACE
FL-TAKEABLE FL-SEARCH) (SYNONYM PLASTIQUE EXPLOSIVE TAPE) (ADJECTIVE PLASTIC) (
OWNER 0) (ACTION RT-TH-PLASTIQUE)>
<DEFINE-ROUTINE RT-TH-PLASTIQUE>
<OBJECT TH-DETONATOR (LOC RM-DRILL-ROOM) (DESC "detonator") (FLAGS FL-TAKEABLE)
(SYNONYM DETONATOR TIMER DIAL SWITCH) (ACTION RT-TH-DETONATOR)>
<GLOBAL GL-DETONATOR-TIME 10 <> BYTE>
<DEFINE-ROUTINE RT-TH-DETONATOR>
<DEFINE-ROUTINE RT-I-DETONATOR>