1 ! Copyright (C) 2019 Jason Self <j@jxself.org>
3 ! This file is free software: you may copy, redistribute and/or modify
4 ! it under the terms of the GNU Affero General Public License as
5 ! published by the Free Software Foundation, either version 3 of the
6 ! License, or (at your option) any later version.
8 ! This file is distributed in the hope that it will be useful, but
9 ! WITHOUT ANY WARRANTY; without even the implied warranty of
10 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 ! Affero General Public License for more details.
13 ! You should have received a copy of the GNU Affero General Public
14 ! License along with this file. If not, see https://gnu.org/licenses/
17 Constant Story "The Mall";
18 Constant Headline "^By Jason Self^
19 If you get stuck try typing HELP.^
20 This game gives you freedom; you can change and share it under the
21 terms of the GNU Affero General Public License as published by the
22 Free Software Foundation, either version 3 of the License, or (at your
23 option) any later version. See the GNU Affero General Public License
25 IFID 1AB626D5-E03F-4F03-836C-50F65B643B9B^";
31 Object bank "Bank of Zork"
32 with description "The local branch of the Bank of Zork, the
33 largest banking institution of the Great Underground Empire.
34 The walls are redpainted and there is a distinct wash of pine
35 and sandalwood that hovers in the air. Beyond the lobby of the
36 bank, to the north, lies the vault. The air there is dark--
37 almost heavy-- and thick with the scents of fresh paper and
38 silver and copper. A darkened office sits to the south. As
39 with all branches of the Bank of Zork, a portrait of J.
40 Pierpont Flathead hangs on the wall.",
46 Object closet "Closet"
47 with description "In the closet of the workshop, it is mostly
48 dark. Here lie the new supplies waiting to be taken out to
49 customers to make new teddy bears. Their beady eyes glisten as
50 they reflect the light from the workshop, their bodies
51 deflated in some places, bulging unnaturally in others.",
55 object bears "teddy bears" closet
56 with name 'bear' 'bears' 'teddy' 'teddies' 'ted',
57 before [; Take,Pull,Push,PushDir:
58 print_ret "Shoplifting isn't the answer."; ],
61 Object cookhouse "Cookhouse"
62 with description "The glowing letters atop indicate that this
63 restaurant is called ~The Cookhouse.~ There's a light
64 smokiness in the air, and the tables are covered in
65 soft-looking linen tablecloths. Although, since the mall
66 closed, all of the patrons have left.",
70 Object table2 "table" cookhouse
72 has scenery supporter;
74 Object tablecloth "tablecloth" table2
75 with name 'tablecloth' 'linen' 'cloth',
76 description "It's made of soft-looking linen.",
77 before [; Take,Pull,Push,PushDir:
78 print_ret "Shoplifting isn't the answer."; ],
81 Object securityoffice "Security Office"
82 with description "A small office belonging to the bank's security
83 officer. You scan the room, seeing a table and a large bulky
88 Object television "television" securityoffice
89 with name 'television' 'tv' 'screen' 'monitor',
90 description "It's big, gray, and one of those old-fashioned
93 before [; Listen,Examine:
94 if (television has on) {
95 self.watch_count = self.watch_count + 1;
96 switch (self.watch_count) {
97 default: print "It's big, gray, and one of those old-fashioned
98 CRT models. It looks very heavy.^The TV is currently switched
99 on. It's showing grainy footage at odd angles from the vault's
100 security cameras.^"; return true;
103 Take,Pull,Push,PushDir:
104 print_ret "The television is firmly attached to the wall.";
107 print "The television comes to life, showing grainy
108 footage at odd angles from the vault's security
109 cameras.^"; return true;
111 has scenery switchable;
113 Object table "table" securityoffice
115 description "Made from metal, it looks to be a solid and
117 has scenery supporter;
119 Object coppercoin "copper coin" table
120 with name 'copper' 'coin' 'zorkmid',
121 description "The coin seems to be very old, in very poor
122 condition, and somewhat irregular in shape. The only things
123 clearly visible are what appears to be a name on one side:
124 Belwit The Flat and a date on the other: 699 GUE.";
126 Object keycard "keycard" table
127 with name 'keycard' 'key' 'card',
128 description "The keycard is used to open things.";
131 with description "You're in the main walkway. It's bright and clean
132 with stores all around. Pale light glimmers off the polished
133 tile like sunlight on water. The quietness of the closed mall
134 floats by as if on the wind. The mall's exit is to the
143 Object mallexit "door" mall
144 with name 'door' 'exit',
145 description "A revolving door to the outside world, with the
146 word ~Exit~ written above. Sunlight streams crisply in
149 before [; unlock: deadflag = 2; return true;
151 has scenery openable locked;
153 Object portrait "portrait" bank
154 with name 'portrait' 'picture' 'photo',
155 description "It's a portrait of J. Pierpont Flathead. His
156 portrait adorns every branch of the Bank of Zork.",
157 before [; Take,Pull,Push,PushDir:
158 print_ret (The) self, " is firmly attached to the wall."; ],
162 with description [; print "You've just sauntered into a salon.";
163 if (salon hasnt visited) print " Suddenly you bump your head
164 on the ceiling, but it's not such a bad bump that it's going
165 to prevent you from looking at things.";
166 if (salon has visited) print " Remembering the low ceiling,
167 you take care not to bump your head."; print " Behind the
168 reception desk is a small display made up of backlit shampoos
169 and conditioners in various shades of translucent blue.
170 Continuing to the west is another room.";
176 object desk "reception desk" salon
177 with name 'desk' 'reception',
180 object shampoo "shampoos" salon
181 with name 'shampoo' 'shampoos' 'display',
182 before [; Take,Pull,Push,PushDir:
183 print_ret "Shoplifting isn't the answer."; ],
186 object conditioner "conditioners" salon
187 with name 'conditioner' 'conditioners',
188 before [; Take,Pull,Push,PushDir:
189 print_ret "Shoplifting isn't the answer."; ],
192 Object salon2 "Salon"
193 with description "This is a tranquil glasslit room where the
194 stylists would work on peoples' hair. You can imagine the
195 sounds of clipping shears and buzzing razors resounding
196 through the air with the clarity of a ringing bell when this
201 Object vaultdoor "vault door" bank
202 with name 'vault' 'safe',
203 description "A large, circular, and hefty door. The words
204 ~Manufactured By The Frobozz Magic Vault Company~ are engraved
206 has scenery door openable locked;
208 Object workshop "Bear Workshop"
209 with description "A workshop for making stuffed bears although by
210 now everything is put away. The workshop retains a pleasant
211 atmosphere. You should try going west.",
220 "^You fell asleep in the mall. Now it's closed, and the
221 exit's locked. Can you get out?";
224 [ XyzzySub; "Nothing obvious happens."; ];
226 [ HelpSub; "If you need help try some of the commands from:
227 ^http://pr-if.org/doc/play-if-card/"; ];
231 Verb 'About' * -> Version;
232 Verb 'Info' * -> Version;
233 Verb 'Help' * -> Help;
234 Verb 'xyzzy' * -> Xyzzy;