24 #ifndef MADS_PHANTOM_SCENES_H 25 #define MADS_PHANTOM_SCENES_H 27 #include "mads/scene.h" 28 #include "mads/phantom/game_phantom.h" 49 VERB_CLIMB_DOWN = 0x21,
50 VERB_CLIMB_INTO = 0x22,
51 VERB_CLIMB_THROUGH = 0x23,
54 VERB_JUMP_INTO = 0x53,
58 VERB_LOOK_THROUGH = 0x61,
64 VERB_WALK_ACROSS = 0x99,
65 VERB_WALK_DOWN = 0x9A,
66 VERB_WALK_THROUGH = 0x9B,
70 VERB_WALK_ONTO = 0xA6,
73 VERB_WALK_BEHIND = 0xF3,
79 VERB_WALK_DOWN_STAIRS_TO = 0x153
88 NOUN_ACT_CURTAIN = 0x11,
91 NOUN_BACKSTAGE = 0x15,
92 NOUN_BEAR_PROP = 0x16,
93 NOUN_BLUE_FRAME = 0x17,
102 NOUN_CIRCULAR_STAIRCASE = 0x20,
103 NOUN_COLUMN_PROP = 0x24,
104 NOUN_CONDUCTORS_STAND = 0x25,
105 NOUN_CORRIDOR = 0x26,
107 NOUN_COUNTERWEIGHT_SYSTEM = 0x28,
110 NOUN_CRUMPLED_NOTE = 0x2B,
111 NOUN_CYCLORAMA = 0x2C,
112 NOUN_CYLINDER = 0x2D,
114 NOUN_DRESSING_ROOM_DOOR = 0x2F,
115 NOUN_DRESSING_SCREEN = 0x30,
116 NOUN_DRESSING_TABLE = 0x31,
117 NOUN_ELEPHANT_PROP = 0x32,
118 NOUN_ENVELOPE = 0x33,
119 NOUN_EXIT_DOWN = 0x35,
120 NOUN_EXIT_SIGN = 0x36,
121 NOUN_EXIT_TO_BACKSTAGE = 0x38,
122 NOUN_EXIT_TO_CELLAR = 0x39,
123 NOUN_EXIT_TO_CORRIDOR = 0x3A,
124 NOUN_EXIT_TO_DRESSING_RMS = 0x3B,
125 NOUN_EXIT_TO_LEFT_WING = 0x3C,
126 NOUN_EXIT_TO_PIT = 0x3D,
127 NOUN_EXIT_TO_RIGHT_WING = 0x3E,
128 NOUN_EXIT_TO_STAGE = 0x3F,
129 NOUN_EXIT_TO_STAIRWELL = 0x40,
130 NOUN_EXIT_TO_TRAP_ROOM = 0x41,
132 NOUN_EXPOSED_BRICK = 0x43,
134 NOUN_FIRE_AXE = 0x45,
139 NOUN_FOLDING_CHAIRS = 0x4A,
140 NOUN_GARBAGE_CAN = 0x4B,
141 NOUN_GRAFFITI = 0x4C,
142 NOUN_GREEN_FRAME = 0x4D,
152 NOUN_LARGE_NOTE = 0x58,
155 NOUN_LIGHT_FIXTURE = 0x5C,
156 NOUN_LOCKING_RAIL = 0x5E,
157 NOUN_LOCKRAIL = 0x5F,
158 NOUN_MANNEQUINS = 0x62,
160 NOUN_MUMMY_PROP = 0x64,
162 NOUN_MUSIC_SCORE = 0x66,
163 NOUN_MUSIC_STAND = 0x67,
164 NOUN_MUSIC_STANDS = 0x68,
167 NOUN_ORCHESTRA_DOOR = 0x6B,
168 NOUN_ORCHESTRA_PIT = 0x6C,
169 NOUN_PAINTING = 0x6D,
170 NOUN_PARCHMENT = 0x6E,
171 NOUN_PIECE_OF_PAPER = 0x6F,
176 NOUN_PROMPTERS_BOX = 0x74,
177 NOUN_PROP_TABLE = 0x75,
179 NOUN_PROSCENIUM_ARCH = 0x77,
180 NOUN_PURCHASE_LINES = 0x78,
182 NOUN_RED_FRAME = 0x7B,
186 NOUN_SCAFFOLDING = 0x80,
188 NOUN_SIDE_WALL = 0x82,
189 NOUN_SMALL_NOTE = 0x83,
191 NOUN_STAGE_EXIT = 0x85,
192 NOUN_STAGE_LEFT = 0x86,
193 NOUN_STAGE_RIGHT = 0x87,
194 NOUN_STAGEMANAGERS_POST = 0x88,
195 NOUN_STAIR_UNIT = 0x89,
196 NOUN_STAIRCASE = 0x8A,
197 NOUN_STAIRWELL = 0x8B,
202 NOUN_THE_HOUSE = 0x90,
203 NOUN_THUNDER_MACHINE = 0x91,
205 NOUN_TRAP_CEILING = 0x93,
206 NOUN_TRAP_DOOR = 0x94,
209 NOUN_WARDROBE = 0x9E,
210 NOUN_WASTE_BASKET = 0x9F,
211 NOUN_WATER_PIPE = 0xA0,
212 NOUN_WEDDING_RING = 0xA2,
213 NOUN_YELLOW_FRAME = 0xA3,
215 NOUN_LEFT_DOOR = 0xA8,
216 NOUN_RIGHT_DOOR = 0xA9,
217 NOUN_DOOR_TO_PIT = 0xAA,
218 NOUN_HEADPHONES = 0xAB,
221 NOUN_DINETTE_SET = 0xAE,
224 NOUN_TRASH_BUCKET = 0xB1,
225 NOUN_CORK_BOARD = 0xB2,
227 NOUN_GRAND_FOYER = 0xB4,
228 NOUN_BACK_WALL = 0xB5,
229 NOUN_BALLET_BAR = 0xB6,
230 NOUN_THROW_RUGS = 0xB7,
231 NOUN_COSTUME_RACK = 0xB8,
232 NOUN_COAT_RACK = 0xB9,
233 NOUN_PAINTINGS = 0xBA,
234 NOUN_UMBRELLA = 0xBB,
236 NOUN_CONTAINER = 0xBD,
237 NOUN_TORN_POSTER = 0xBE,
240 NOUN_STAGE_RIGHT_WING = 0xC1,
241 NOUN_STAGE_LEFT_WING = 0xC2,
242 NOUN_PEDESTAL = 0xC3,
243 NOUN_PLANT_PROP = 0xC4,
246 NOUN_BIG_PROP = 0xC7,
247 NOUN_VENTILATION_DUCT = 0xC8,
248 NOUN_CHANDELIER = 0xC9,
251 NOUN_TICKET_WINDOW = 0xCC,
256 NOUN_LOGE_CORRIDOR = 0xD1,
257 NOUN_HOUSE_LIGHT = 0xD2,
259 NOUN_LEFT_COLUMN = 0xD4,
260 NOUN_RIGHT_COLUMN = 0xD5,
261 NOUN_BOOKCASE = 0xD6,
263 NOUN_COMFY_CHAIR = 0xD8,
265 NOUN_MANAGERS_CHAIR = 0xDA,
266 NOUN_DESK_LAMP = 0xDB,
269 NOUN_TAPESTRY = 0xDE,
270 NOUN_OVERDOOR_MEDALLION = 0xDF,
271 NOUN_LATTICEWORK = 0xE0,
272 NOUN_DECORATIVE_MOLDING = 0xE1,
273 NOUN_LEFT_DOORWAY = 0xE2,
274 NOUN_LEFT_ARCHWAY = 0xE3,
275 NOUN_RIGHT_DOORWAY = 0xE4,
276 NOUN_RIGHT_ARCHWAY = 0xE5,
278 NOUN_END_TABLE = 0xE7,
279 NOUN_COFFEE_TABLE = 0xE8,
280 NOUN_DECORATIVE_VASE = 0xE9,
281 NOUN_MARBLE_COLUMN = 0xEA,
282 NOUN_BOX_FIVE = 0xEB,
284 NOUN_BOX_SEVEN = 0xEE,
285 NOUN_BOX_EIGHT = 0xEF,
286 NOUN_BOX_NINE = 0xF0,
289 NOUN_MIDDLE_DOORWAY = 0xF4,
295 NOUN_DOOR_CHUNKS = 0xFA,
297 NOUN_BULLETIN_BOARD = 0xFC,
299 NOUN_GLASS_CASE = 0xFE,
301 NOUN_MIDDLE_DOOR = 0x100,
302 NOUN_DRESSING_GOWN = 0x101,
303 NOUN_MONSIEUR_BRIE = 0x102,
304 NOUN_CATWALK = 0x103,
307 NOUN_GRIDWORK = 0x106,
308 NOUN_DUCTWORK = 0x107,
309 NOUN_OPENING = 0x108,
312 NOUN_CHRISTINE_DAAE = 0x10B,
313 NOUN_CHRISTINE = 0x10C,
315 NOUN_PROMPTERS_STAND = 0x10E,
316 NOUN_SUPPORT = 0x10F,
317 NOUN_OTHER_CATWALK = 0x110,
319 NOUN_BEAM_POSITION = 0x112,
320 NOUN_LIGHTING_INSTRUMENT = 0x113,
323 NOUN_CATWALK_OVER_HOUSE = 0x116,
324 NOUN_STAIRCASE_POST = 0x117,
325 NOUN_JACQUES = 0x118,
326 NOUN_GENTLEMAN = 0x119,
328 NOUN_HOLLOW_COLUMN = 0x11B,
329 NOUN_UPPER_LEVEL = 0x11C,
330 NOUN_MIDDLE_LEVEL = 0x11D,
331 NOUN_LOWER_LEVEL = 0x11E,
333 NOUN_CHANDELIER_TRAP = 0x121,
334 NOUN_PIECE_OF_WOOD = 0x122,
335 NOUN_CUT_HEMP = 0x123,
336 NOUN_STONE_WALL = 0x124,
338 NOUN_STONE_COLUMN = 0x126,
339 NOUN_EXIT_THROUGH = 0x127,
340 NOUN_STONE_FLOOR = 0x128,
341 NOUN_STONE_ARCHWAY = 0x129,
342 NOUN_CHARLES = 0x12A,
344 NOUN_PROMPTERS_SEAT = 0x12C,
346 NOUN_MONSIEUR_RICHARD = 0x12E,
348 NOUN_CABLE_HOOK = 0x130,
349 NOUN_ROPE_WITH_HOOK = 0x132,
353 NOUN_ORGAN_BENCH = 0x137,
354 NOUN_LARGE_CHAIR = 0x139,
355 NOUN_SARCOPHAGUS = 0x13B,
360 NOUN_CURTAIN = 0x140,
363 NOUN_MADAME_GIRY = 0x143,
365 NOUN_MORE_CATACOMBS = 0x145,
366 NOUN_BLOCKED_ARCHWAY = 0x146,
368 NOUN_CATACOMBS = 0x148,
369 NOUN_TICKET_SELLER = 0x149,
371 NOUN_UNLUCKY_ADVENTURER = 0x14B,
372 NOUN_SWITCH_PANEL = 0x14C,
373 NOUN_SKULL_SWITCH = 0x14D,
375 NOUN_CATACOMB_ROOM = 0x14F,
376 NOUN_BOX_TEN = 0x150,
378 NOUN_WALK_DOWN_STAIRCASE = 0x152,
379 NOUN_HAT_RACK = 0x154,
381 NOUN_CLOTHES_DUMMY = 0x156,
382 NOUN_NOTICES = 0x157,
383 NOUN_ARCHWAY_TO_NORTH = 0x158,
384 NOUN_ARCHWAY_TO_WEST = 0x159,
385 NOUN_ARCHWAY_TO_EAST = 0x15A,
393 NOUN_RATS_NEST = 0x162,
394 NOUN_BROKEN_POT = 0x163,
398 NOUN_SKULL_SWITCH_1 = 0x167,
399 NOUN_SKULL_SWITCH_2 = 0x168,
400 NOUN_SKULL_SWITCH_3 = 0x169,
401 NOUN_SKULL_SWITCH_4 = 0x16A,
402 NOUN_SKULL_SWITCH_5 = 0x16B,
403 NOUN_SKULL_SWITCH_6 = 0x16C,
404 NOUN_SKULL_SWITCH_7 = 0x16D,
405 NOUN_SKULL_SWITCH_8 = 0x16E,
406 NOUN_SKULL_SWITCH_9 = 0x16F,
407 NOUN_SKULL_SWITCH_10 = 0x170,
408 NOUN_SKULL_SWITCH_11 = 0x171,
409 NOUN_SKULL_SWITCH_12 = 0x172,
410 NOUN_SKULL_SWITCH_13 = 0x173,
411 NOUN_SKULL_SWITCH_14 = 0x174,
412 NOUN_SKULL_SWITCH_15 = 0x175,
413 NOUN_SKULL_SWITCH_16 = 0x176,
414 NOUN_SKULL_SWITCH_17 = 0x177,
415 NOUN_SKULL_SWITCH_18 = 0x178,
416 NOUN_SKULL_SWITCH_19 = 0x179,
417 NOUN_SKULL_SWITCH_20 = 0x17A,
418 NOUN_SKULL_SWITCH_21 = 0x17B,
419 NOUN_SKULL_SWITCH_22 = 0x17C,
420 NOUN_SKULL_SWITCH_23 = 0x17D,
421 NOUN_SKULL_SWITCH_24 = 0x17E,
422 NOUN_SKULL_SWITCH_25 = 0x17F,
423 NOUN_SKULL_SWITCH_26 = 0x180,
424 NOUN_EDGAR_DEGAS = 0x181,
425 NOUN_CHANDELIER_CABLE = 0x182,
426 NOUN_COB_WEB = 0x183,
427 NOUN_SKULL_FACE = 0x184,
434 NOUN_PADLOCK = 0x18B,
437 NOUN_PHANTOM = 0x18E,
443 static SceneLogic *createScene(MADSEngine *vm);
449 class PhantomScene :
public SceneLogic {
451 PhantomGlobals &_globals;
463 void lowRoomsEntrySound();
468 PhantomScene(MADSEngine *vm);
473 class SceneInfoPhantom :
public SceneInfo {
474 friend class SceneInfo;
476 void loadCodes(BaseSurface &depthSurface,
int variant)
override;
483 SceneInfoPhantom(MADSEngine *vm) : SceneInfo(vm) {}