ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
dragonsphere_scenes.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifdef ENABLE_MADSV2
23 
24 #ifndef MADS_DRAGONSPHERE_SCENES_H
25 #define MADS_DRAGONSPHERE_SCENES_H
26 
27 #include "mads/scene.h"
28 #include "mads/dragonsphere/game_dragonsphere.h"
29 //#include "mads/dragonsphere/globals_dragonsphere.h"
30 
31 namespace MADS {
32 
33 namespace Dragonsphere {
34 
35 enum Verb {
36  VERB_LOOK = 0x3,
37  VERB_TAKE = 0x4,
38  VERB_PUSH = 0x5,
39  VERB_OPEN = 0x6,
40  VERB_PUT = 0x7,
41  VERB_TALK_TO = 0x8,
42  VERB_GIVE = 0x9,
43  VERB_PULL = 0xA,
44  VERB_CLOSE = 0xB,
45  VERB_THROW = 0xC,
46  VERB_WALK_TO = 0xD,
47  VERB_WALK_ACROSS = 0x11,
48  VERB_WALK_BEHIND = 0x1C,
49  VERB_LOOK_AT = 0x1E,
50  VERB_WALK_THROUGH = 0x25,
51  VERB_WALK_INTO = 0x27,
52  VERB_INVOKE = 0x2F,
53  VERB_ATTACK = 0x39,
54  VERB_CARVE_UP = 0x3A,
55  VERB_THRUST = 0x57,
56  VERB_POUR = 0x62,
57  VERB_POUR_CONTENTS_OF = 0x63,
58  VERB_DRINK = 0x64,
59  VERB_SHIFT_SELF = 0x73,
60  VERB_SHIFT_INTO_BEAR = 0x74,
61  VERB_SHIFT_INTO_SEAL = 0x75,
62  VERB_SHIFT_INTO_SNAKE = 0x76,
63  VERB_WALK_DOWN = 0xA9,
64  VERB_WALK = 0x1CB,
65  VERB_WALK_AROUND = 0x221
66 };
67 
68 enum Noun {
69  NOUN_GAME = 0x1,
70  NOUN_QSAVE = 0x2,
71  NOUN_NOTHING = 0xE,
72  NOUN_ = 0xF,
73  NOUN_FLOOR = 0x10,
74  NOUN_RUG = 0x12,
75  NOUN_CARPET = 0x13,
76  NOUN_WALL = 0x14,
77  NOUN_BED = 0x15,
78  NOUN_PILLOW = 0x16,
79  NOUN_CHEST = 0x17,
80  NOUN_WINDOW = 0x18,
81  NOUN_NIGHTSTAND = 0x19,
82  NOUN_TAPESTRY = 0x1A,
83  NOUN_DRESSING_SCREEN = 0x1B,
84  NOUN_ROYAL_CREST = 0x1D,
85  NOUN_WASHBASIN = 0x1F,
86  NOUN_WASH_AT = 0x20,
87  NOUN_BOOK = 0x21,
88  NOUN_FIREPLACE = 0x22,
89  NOUN_FIREPLACE_SCREEN = 0x23,
90  NOUN_DOOR_TO_QUEENS_ROOM = 0x24,
91  NOUN_HALL_TO_SOUTH = 0x26,
92  NOUN_WALL_PLAQUE = 0x28,
93  NOUN_DECORATION = 0x29,
94  NOUN_SWORDS = 0x2A,
95  NOUN_WALL_SCONCE = 0x2B,
96  NOUN_BUST_ON_WALL = 0x2C,
97  NOUN_WALL_ARCH = 0x2D,
98  NOUN_SIGNET_RING = 0x2E,
99  NOUN_POLISH = 0x30,
100  NOUN_GANGBANG = 0x31,
101  NOUN_BIRD_FIGURINE = 0x32,
102  NOUN_RUB = 0x33,
103  NOUN_BIRDCALL = 0x34,
104  NOUN_USE = 0x35,
105  NOUN_MAKE_NOISE = 0x36,
106  NOUN_SHIELDSTONE = 0x37,
107  NOUN_SWORD = 0x38,
108  NOUN_GOBLET = 0x3B,
109  NOUN_FILL = 0x3C,
110  NOUN_DRINK_FROM = 0x3D,
111  NOUN_BONE = 0x3E,
112  NOUN_GNAW = 0x3F,
113  NOUN_FRUIT = 0x40,
114  NOUN_EAT = 0x41,
115  NOUN_DOLL = 0x42,
116  NOUN_PLAY_WITH = 0x43,
117  NOUN_HEAL = 0x44,
118  NOUN_HEAL_THYSELF = 0x45,
119  NOUN_HEAL_SELF = 0x46,
120  NOUN_POLYSTONE = 0x47,
121  NOUN_MIMIC = 0x48,
122  NOUN_RED_POWERSTONE = 0x49,
123  NOUN_YELLOW_POWERSTONE = 0x4A,
124  NOUN_BLUE_POWERSTONE = 0x4B,
125  NOUN_KEY_CROWN = 0x4C,
126  NOUN_WEAR = 0x4D,
127  NOUN_DATES = 0x4E,
128  NOUN_STATUE = 0x4F,
129  NOUN_BOTTLE_OF_FLIES = 0x50,
130  NOUN_LISTEN_TO = 0x51,
131  NOUN_SOUL_EGG = 0x52,
132  NOUN_BREAK = 0x53,
133  NOUN_MAGIC_BELT = 0x54,
134  NOUN_ADJUST = 0x55,
135  NOUN_AMULET = 0x56,
136  NOUN_MUD = 0x58,
137  NOUN_FEEL = 0x59,
138  NOUN_TASTE = 0x5A,
139  NOUN_FEATHERS = 0x5B,
140  NOUN_TICKLE = 0x5C,
141  NOUN_TORCH = 0x5D,
142  NOUN_WAVE = 0x5E,
143  NOUN_FLASK = 0x5F,
144  NOUN_FLASK_FULL_OF_ACID = 0x60,
145  NOUN_POUR_CONTENTS = 0x61,
146  NOUN_ROPE = 0x65,
147  NOUN_TIE = 0x66,
148  NOUN_POWER_VACUUM_STONE = 0x67,
149  NOUN_TAKE_MAGIC_FROM = 0x68,
150  NOUN_DEAD_RAT = 0x69,
151  NOUN_PET = 0x6A,
152  NOUN_MAP = 0x6B,
153  NOUN_FOLD = 0x6C,
154  NOUN_CRYSTAL_BALL = 0x6D,
155  NOUN_GAZE_INTO = 0x6E,
156  NOUN_INVOKE_POWER_OF = 0x6F,
157  NOUN_BLACK_SPHERE = 0x70,
158  NOUN_SOPTUS_SOPORIFIC = 0x71,
159  NOUN_SHIFTER_RING = 0x72,
160  NOUN_REVERT = 0x77,
161  NOUN_MEDICINE_BUNDLE = 0x78,
162  NOUN_SHAKE = 0x79,
163  NOUN_PARTLY_BUILT_BUNDLE = 0x7A,
164  NOUN_RATSICLE = 0x7B,
165  NOUN_LICK = 0x7C,
166  NOUN_TENTACLE_PARTS = 0x7D,
167  NOUN_CHEW = 0x7E,
168  NOUN_TELEPORT_DOOR = 0x7F,
169  NOUN_UNROLL = 0x80,
170  NOUN_RARE_COIN = 0x81,
171  NOUN_ADMIRE = 0x82,
172  NOUN_CRYSTAL_FLOWER = 0x83,
173  NOUN_DIAMOND_DUST = 0x84,
174  NOUN_RUBY_RING = 0x85,
175  NOUN_GOLD_NUGGET = 0x86,
176  NOUN_MAGIC_MUSIC_BOX = 0x87,
177  NOUN_EMERALD = 0x88,
178  NOUN_PIECE_OF_PAPER = 0x89,
179  NOUN_SPEAK_WORDS_ON = 0x8A,
180  NOUN_VORTEX_STONE = 0x8B,
181  NOUN_RUG2 = 0x8C,
182  NOUN_FIREPLACE_SCREEN2 = 0x8D,
183  NOUN_BUST_ON_WALL2 = 0x8E,
184  NOUN_LOOK_AT2 = 0x8F,
185  NOUN_DRAGON = 0x90,
186  NOUN_DRAGONSPHERE = 0x91,
187  NOUN_TOUCH = 0x92,
188  NOUN_THRONE_ROOM = 0x93,
189  NOUN_RETURN_TO = 0x94,
190  NOUN_CAVE = 0x95,
191  NOUN_PASSAGEWAY_TO_WEST = 0x96,
192  NOUN_PASSAGEWAY_TO_EAST = 0x97,
193  NOUN_CAVE_FLOOR = 0x98,
194  NOUN_STONE_COLUMN = 0x99,
195  NOUN_ABYSS = 0x9A,
196  NOUN_LOOK_INTO = 0x9B,
197  NOUN_CASTLE = 0x9C,
198  NOUN_CASTLE_GATE = 0x9D,
199  NOUN_GROUND = 0x9E,
200  NOUN_BARREL = 0x9F,
201  NOUN_BARRELS = 0xA0,
202  NOUN_HAYSTACK = 0xA1,
203  NOUN_ROOT_THROUGH = 0xA2,
204  NOUN_BATTLEMENTS = 0xA3,
205  NOUN_GATE_TO_THRONE_ROOM = 0xA4,
206  NOUN_CASTLE_WALL = 0xA5,
207  NOUN_DOOR = 0xA6,
208  NOUN_WALL_SWITCH = 0xA7,
209  NOUN_STAIRS = 0xA8,
210  NOUN_EDGE_OF_ABYSS = 0xAA,
211  NOUN_COURTYARD = 0xAB,
212  NOUN_ROCK = 0xAC,
213  NOUN_CAVE_CEILING = 0xAD,
214  NOUN_CAVE_WALL = 0xAE,
215  NOUN_BRAZIER = 0xAF,
216  NOUN_DOOR_TO_THRONE_ROOM = 0xB0,
217  NOUN_GO_THROUGH = 0xB1,
218  NOUN_DINING_TABLE = 0xB2,
219  NOUN_ACTIVATE = 0xB3,
220  NOUN_BATTLEMENT = 0xB4,
221  NOUN_DOOR_TO_GAURDROOM = 0xB5,
222  NOUN_DUNGEON_FLOOR = 0xB6,
223  NOUN_DUNGEON_WALLS = 0xB7,
224  NOUN_DUNGEON_CEILING = 0xB8,
225  NOUN_BEDDING = 0xB9,
226  NOUN_FLOOR_GRATE = 0xBA,
227  NOUN_MANACLES = 0xBB,
228  NOUN_CALENDAR = 0xBC,
229  NOUN_DOOR_TO_GUARDROOM = 0xBD,
230  NOUN_DOOR_TO_COUNCIL_ROOM = 0xBE,
231  NOUN_GUARD_STATION = 0xBF,
232  NOUN_DOOR_TO_DUNGEON_CELL = 0xC0,
233  NOUN_DOORWAY_TO_CELL = 0xC1,
234  NOUN_DUNGEON_DOOR = 0xC2,
235  NOUN_DUNGEON_WALL = 0xC3,
236  NOUN_CEILING = 0xC4,
237  NOUN_DOOR_TO_HALLWAY = 0xC5,
238  NOUN_TABLE = 0xC6,
239  NOUN_BOOKSHELF = 0xC7,
240  NOUN_TROPHY = 0xC8,
241  NOUN_READING_BENCH = 0xC9,
242  NOUN_CHAIR = 0xCA,
243  NOUN_LOVESEAT = 0xCB,
244  NOUN_WOOD_BASKET = 0xCC,
245  NOUN_STOOL = 0xCD,
246  NOUN_GUARD_STOOL = 0xCE,
247  NOUN_ROCKS = 0xCF,
248  NOUN_DIVIDING_WALL = 0xD0,
249  NOUN_ARCHWAY = 0xD1,
250  NOUN_MARKET_GROUNDS = 0xD2,
251  NOUN_HEDGE = 0xD3,
252  NOUN_SKY = 0xD4,
253  NOUN_PLAINS = 0xD5,
254  NOUN_FIELDS = 0xD6,
255  NOUN_GATE_TO_COURTYARD = 0xD7,
256  NOUN_ROAD_TO_EAST = 0xD8,
257  NOUN_TREES = 0xD9,
258  NOUN_CLOUDS = 0xDA,
259  NOUN_MERCHANTS_STALL = 0xDB,
260  NOUN_WELL = 0xDC,
261  NOUN_DOWN_WELL = 0xDD,
262  NOUN_GO = 0xDE,
263  NOUN_GO_DOWN = 0xDF,
264  NOUN_CRANK = 0xE0,
265  NOUN_BUCKET = 0xE1,
266  NOUN_JUMP_DOWN = 0xE2,
267  NOUN_WALLS = 0xE3,
268  NOUN_DOORWAY_TO_SOUTH = 0xE4,
269  NOUN_PEDESTAL = 0xE5,
270  NOUN_DOOR_TO_NORTH = 0xE6,
271  NOUN_PAINTING = 0xE7,
272  NOUN_DOCUMENT = 0xE8,
273  NOUN_INK_BOTTLE = 0xE9,
274  NOUN_QUILL_PEN = 0xEA,
275  NOUN_CHANDELIER = 0xEB,
276  NOUN_COUNCIL_TABLE = 0xEC,
277  NOUN_CANDLESTICK = 0xED,
278  NOUN_DESK = 0xEE,
279  NOUN_TURN = 0xEF,
280  NOUN_POLE = 0xF0,
281  NOUN_THE_SCENE = 0xF1,
282  NOUN_LEAVE = 0xF2,
283  NOUN_END_TABLE = 0xF3,
284  NOUN_BATTLE_AXES = 0xF4,
285  NOUN_DOOR_TO_KINGS_ROOM = 0xF5,
286  NOUN_COAT_OF_ARMS = 0xF6,
287  NOUN_LARGE_WINDOW = 0xF7,
288  NOUN_SMALL_WINDOW = 0xF8,
289  NOUN_DOOR_TO_MEETING_ROOM = 0xF9,
290  NOUN_DOOR_TO_BALLROOM = 0xFA,
291  NOUN_FLOWERS = 0xFB,
292  NOUN_SHUTTERS = 0xFC,
293  NOUN_BOOKCASE = 0xFD,
294  NOUN_DOOR_TO_COURTYARD = 0xFE,
295  NOUN_PLATFORM = 0xFF,
296  NOUN_STEP = 0x100,
297  NOUN_RED_CARPET = 0x101,
298  NOUN_KINGS_THRONE = 0x102,
299  NOUN_SIT_IN = 0x103,
300  NOUN_QUEENS_THRONE = 0x104,
301  NOUN_TRAPDOOR = 0x105,
302  NOUN_GRATE = 0x106,
303  NOUN_RIVER = 0x107,
304  NOUN_DIARIES = 0x108,
305  NOUN_SWIM_DOWN = 0x109,
306  NOUN_SCULLERY_MAID = 0x10A,
307  NOUN_DOORWAY_TO_DUNGEON = 0x10B,
308  NOUN_WARD = 0x10C,
309  NOUN_DARKNESS_BEAST = 0x10D,
310  NOUN_BEAST = 0x10E,
311  NOUN_PUT_MAGIC_INTO = 0x10F,
312  NOUN_GUARD = 0x110,
313  NOUN_CROWN = 0x111,
314  NOUN_BOOKS = 0x112,
315  NOUN_SECRET_DOOR = 0x113,
316  NOUN_WALL_PANEL = 0x114,
317  NOUN_DOORWAY = 0x115,
318  NOUN_FAERIE = 0x116,
319  NOUN_SOPTUS_ECLIPTUS = 0x117,
320  NOUN_GUARD_CAPTAIN = 0x118,
321  NOUN_MERCHANT = 0x119,
322  NOUN_SHAPECHANGER = 0x11A,
323  NOUN_RED_STONE = 0x11B,
324  NOUN_YELLOW_STONE = 0x11C,
325  NOUN_BLUE_STONE = 0x11D,
326  NOUN_FLIES = 0x11E,
327  NOUN_FLASK_OF_ACID = 0x11F,
328  NOUN_PARTIAL_BUNDLE = 0x120,
329  NOUN_SOPORIFIC = 0x121,
330  NOUN_PARCHMENT = 0x122,
331  NOUN_KING = 0x123,
332  NOUN_MACMORN = 0x124,
333  NOUN_MOUNTAINSIDE = 0x125,
334  NOUN_PATH_TO_SOUTH = 0x126,
335  NOUN_ROUGH_STONE = 0x127,
336  NOUN_CLIMB_UP = 0x128,
337  NOUN_LARGE_ROCK = 0x129,
338  NOUN_SMALL_ROCK = 0x12A,
339  NOUN_PATH_TO_WEST = 0x12B,
340  NOUN_CAVE_ENTRANCE = 0x12C,
341  NOUN_PALLET = 0x12D,
342  NOUN_BLANKET = 0x12E,
343  NOUN_FIREPIT = 0x12F,
344  NOUN_FLAT_STONE = 0x130,
345  NOUN_MOVE = 0x131,
346  NOUN_SPIRIT_BUNDLE = 0x132,
347  NOUN_TRAIL_LEADING_UP = 0x133,
348  NOUN_FOLLOW = 0x134,
349  NOUN_TRAIL_LEADING_DOWN = 0x135,
350  NOUN_NEST = 0x136,
351  NOUN_REACH_IN = 0x137,
352  NOUN_TRAIL_LEADING_WEST = 0x138,
353  NOUN_PATH_TO_EAST = 0x139,
354  NOUN_WATERFALL = 0x13A,
355  NOUN_PUDDLE = 0x13B,
356  NOUN_EDGE_OF_CLIFF = 0x13C,
357  NOUN_LEDGE = 0x13D,
358  NOUN_CLIMB_DOWN = 0x13E,
359  NOUN_LANDING = 0x13F,
360  NOUN_BOULDERS = 0x140,
361  NOUN_ROCK_TUMBLE = 0x141,
362  NOUN_ROCK_TREE = 0x142,
363  NOUN_PILLAR = 0x143,
364  NOUN_JUMP_TO = 0x144,
365  NOUN_CLIFF = 0x145,
366  NOUN_PILLARS = 0x146,
367  NOUN_SPECIAL_ROCK = 0x147,
368  NOUN_GAZE_UPON = 0x148,
369  NOUN_SCONCE = 0x149,
370  NOUN_LADDER = 0x14A,
371  NOUN_STAIRWAY = 0x14B,
372  NOUN_MECHANISM = 0x14C,
373  NOUN_SPEARHEADS = 0x14D,
374  NOUN_TRAP_DOOR = 0x14E,
375  NOUN_SWIM = 0x14F,
376  NOUN_DOWN_RIVER = 0x150,
377  NOUN_SWIM_UP = 0x151,
378  NOUN_UP_RIVER = 0x152,
379  NOUN_SHORE = 0x153,
380  NOUN_SWIM_TO = 0x154,
381  NOUN_SWIM_TOWARDS = 0x155,
382  NOUN_KING_CALLASH = 0x156,
383  NOUN_KINGS_THRONE2 = 0x157,
384  NOUN_KING2 = 0x158,
385  NOUN_GROTTO = 0x159,
386  NOUN_CLIMB_THROUGH = 0x15A,
387  NOUN_QUEEN_MOTHER = 0x15B,
388  NOUN_MACMORN2 = 0x15C,
389  NOUN_SMALL_LEDGE = 0x15D,
390  NOUN_MACMORN3 = 0x15E,
391  NOUN_TO_110 = 0x15F,
392  NOUN_TO_KITTY_HEAVEN = 0x160,
393  NOUN_KITTY_HEAVEN = 0x161,
394  NOUN_ROOM_110 = 0x162,
395  NOUN_LLANIE = 0x163,
396  NOUN_CW = 0x164,
397  NOUN_HERMIT = 0x165,
398  NOUN_TROU = 0x166,
399  NOUN_SHAK = 0x167,
400  NOUN_ROOM_501 = 0x168,
401  NOUN_MOON = 0x169,
402  NOUN_UFO = 0x16A,
403  NOUN_SIT_ON = 0x16B,
404  NOUN_STRANGER = 0x16C,
405  NOUN_TOWER_DOOR = 0x16D,
406  NOUN_DOOR_TO_EAST = 0x16E,
407  NOUN_DOOR_TO_WEST = 0x16F,
408  NOUN_EYE = 0x170,
409  NOUN_DOORWAY_TO_EAST = 0x171,
410  NOUN_DOORWAY_TO_WEST = 0x172,
411  NOUN_SKULL = 0x173,
412  NOUN_DOOR_TO_MAGIC_ROOM = 0x174,
413  NOUN_ANCIENT_BARREL = 0x175,
414  NOUN_COBWEBS = 0x176,
415  NOUN_SHELF = 0x177,
416  NOUN_MUSTY_CHART = 0x178,
417  NOUN_LAB_TABLE = 0x179,
418  NOUN_PETCOCK = 0x17A,
419  NOUN_NOZZLE = 0x17B,
420  NOUN_TUBING = 0x17C,
421  NOUN_BEAKER = 0x17D,
422  NOUN_FLAME = 0x17E,
423  NOUN_METAL_PLATE = 0x17F,
424  NOUN_SHAFT_OF_LIGHT = 0x180,
425  NOUN_CABINET = 0x181,
426  NOUN_BALANCE = 0x182,
427  NOUN_CAGE = 0x183,
428  NOUN_FREEZER = 0x184,
429  NOUN_CONTENTS_OF_FREEZER = 0x185,
430  NOUN_CAGE_WITH_RATS = 0x186,
431  NOUN_DOOR_TO_SOUTH = 0x187,
432  NOUN_TRAIL_OF_GREEN_SLIME = 0x188,
433  NOUN_NECK_LOCK = 0x189,
434  NOUN_BENCH = 0x18A,
435  NOUN_SKELETON = 0x18B,
436  NOUN_LEG_CLAMPS = 0x18C,
437  NOUN_LEG_LOCK = 0x18D,
438  NOUN_WAIST_LOCK = 0x18E,
439  NOUN_NER_TOM = 0x18F,
440  NOUN_BELT = 0x190,
441  NOUN_JUMP_INTO = 0x191,
442  NOUN_CLOSET = 0x192,
443  NOUN_DOOR_TO_EYE_CHAMBER = 0x193,
444  NOUN_DRESSER = 0x194,
445  NOUN_SCROLL = 0x195,
446  NOUN_WITCH_PARAPHERNALIA = 0x196,
447  NOUN_SHELVES = 0x197,
448  NOUN_MAGIC_TOMES = 0x198,
449  NOUN_MAGIC_PARAPHERNALIA = 0x199,
450  NOUN_BOOK_OF_MAGIC = 0x19A,
451  NOUN_HOURGLASS = 0x19B,
452  NOUN_STONE_SPHERE = 0x19C,
453  NOUN_SHADOW_OF_WINDOW = 0x19D,
454  NOUN_MUSIC_BOX = 0x19E,
455  NOUN_LARGE_SPIDER_WEB = 0x19F,
456  NOUN_INFERNAL_MACHINE = 0x1A0,
457  NOUN_WATER_SOURCE = 0x1A1,
458  NOUN_FLOW_OF_WATER = 0x1A2,
459  NOUN_RETORT = 0x1A3,
460  NOUN_DOORWAY_TO_CORRIDOR = 0x1A4,
461  NOUN_TELESCOPE = 0x1A5,
462  NOUN_STRANGE_MAP = 0x1A6,
463  NOUN_CIRCLE_OF_SPHERES = 0x1A7,
464  NOUN_STONE_BED = 0x1A8,
465  NOUN_DRAGON_SCULPTURE = 0x1A9,
466  NOUN_RAT = 0x1AA,
467  NOUN_RAT_CAGE = 0x1AB,
468  NOUN_DOWN_BUTTON = 0x1AC,
469  NOUN_DOOR_TO_MACHINE_ROOM = 0x1AD,
470  NOUN_STRANGE_PORTAL = 0x1AE,
471  NOUN_DOOR_FRAME = 0x1AF,
472  NOUN_ELEVATOR_HOLE = 0x1B0,
473  NOUN_UP_BUTTON = 0x1B1,
474  NOUN_DOORWAY_TO_DARK_ROOM = 0x1B2,
475  NOUN_BIG_SKULL = 0x1B3,
476  NOUN_ELEVATOR_PLATFORM = 0x1B4,
477  NOUN_BUTTON = 0x1B5,
478  NOUN_TOP_BUTTON = 0x1B6,
479  NOUN_BOTTOM_BUTTON = 0x1B7,
480  NOUN_TELEPORTAL = 0x1B8,
481  NOUN_EYE_CHAMBER_DOORWAY = 0x1B9,
482  NOUN_MACHINE_ROOM_DOORWAY = 0x1BA,
483  NOUN_GLOWING_FLOOR = 0x1BB,
484  NOUN_BRYNN_FANN = 0x1BC,
485  NOUN_GRAN_CALLAHACH = 0x1BD,
486  NOUN_SLATHAN_NI_PATAN = 0x1BE,
487  NOUN_HIGHTOWER = 0x1BF,
488  NOUN_SOPTUS_ECLIPTUS2 = 0x1C0,
489  NOUN_TOWER = 0x1C1,
490  NOUN_MOUNTAIN_PATH = 0x1C2,
491  NOUN_PATH_BEHIND_TOWER = 0x1C3,
492  NOUN_VINES = 0x1C4,
493  NOUN_SLATHAN_NI_PATAN2 = 0x1C5,
494  NOUN_SICK = 0x1C6,
495  NOUN_PATH_AROUND_TOWER = 0x1C7,
496  NOUN_PATH_TO_HIGHTOWER = 0x1C8,
497  NOUN_SPIRIT_PLANE = 0x1C9,
498  NOUN_SPIRIT_TREE = 0x1CA,
499  NOUN_REMAINS = 0x1CC,
500  NOUN_DOORWAY_TO_ELEVATOR = 0x1CD,
501  NOUN_DRAGON_DOOR = 0x1CE,
502  NOUN_DRAGON_BONES = 0x1CF,
503  NOUN_IRON_FLOOR = 0x1D0,
504  NOUN_HOLE = 0x1D1,
505  NOUN_STONE = 0x1D2,
506  NOUN_HOMEMADE_BUNDLE = 0x1D3,
507  NOUN_LEFT = 0x1D4,
508  NOUN_RIGHT = 0x1D5,
509  NOUN_UP = 0x1D6,
510  NOUN_DOWN = 0x1D7,
511  NOUN_WEST = 0x1D8,
512  NOUN_DESERT_TO_WEST = 0x1D9,
513  NOUN_CROSS = 0x1DA,
514  NOUN_DESERT_TO_EAST = 0x1DB,
515  NOUN_DESERT_TO_SOUTH = 0x1DC,
516  NOUN_DESERT_TO_NORTH = 0x1DD,
517  NOUN_DESERT = 0x1DE,
518  NOUN_POWERSTONE = 0x1DF,
519  NOUN_BONES = 0x1E0,
520  NOUN_TENT = 0x1E1,
521  NOUN_BUSH = 0x1E2,
522  NOUN_SANWE = 0x1E3,
523  NOUN_TANGLE = 0x1E4,
524  NOUN_SAND = 0x1E5,
525  NOUN_MAGIC_GRAPES = 0x1E6,
526  NOUN_ROCS_NEST = 0x1E7,
527  NOUN_GRAPE_VINE = 0x1E8,
528  NOUN_STRANGE_SQUARE = 0x1E9,
529  NOUN_WATER_SPHERE = 0x1EA,
530  NOUN_EAST_END_OF_ISLAND = 0x1EB,
531  NOUN_ISLAND = 0x1EC,
532  NOUN_SECRET_MESSAGE = 0x1ED,
533  NOUN_FIND = 0x1EE,
534  NOUN_SAND_NEAR_STONES = 0x1EF,
535  NOUN_DESERT_SKY = 0x1F0,
536  NOUN_POOL = 0x1F1,
537  NOUN_PALM_TREE = 0x1F2,
538  NOUN_OASIS = 0x1F3,
539  NOUN_LEAN_TO = 0x1F4,
540  NOUN_TRADER = 0x1F5,
541  NOUN_SIGN = 0x1F6,
542  NOUN_WATER_FLOW = 0x1F7,
543  NOUN_FLOATING_DISK = 0x1F8,
544  NOUN_GNARLED_ROOT = 0x1F9,
545  NOUN_SNAKE_PIT = 0x1FA,
546  NOUN_MARKER = 0x1FB,
547  NOUN_SHAMAN = 0x1FC,
548  NOUN_GUARDHOUSE = 0x1FD,
549  NOUN_BONE_TREE = 0x1FE,
550  NOUN_EAR_ROCK = 0x1FF,
551  NOUN_MOUTH_ROCK = 0x200,
552  NOUN_NOSE_ROCK = 0x201,
553  NOUN_NEW_BUNDLE = 0x202,
554  NOUN_LIZARD = 0x203,
555  NOUN_ROC = 0x204,
556  NOUN_ROCS_NEST2 = 0x205,
557  NOUN_SELECT = 0x206,
558  NOUN_PURPLE_GEM = 0x207,
559  NOUN_PURPLE_STONE = 0x208,
560  NOUN_GREEN_STONE = 0x209,
561  NOUN_PATH = 0x20A,
562  NOUN_GUARDS = 0x20B,
563  NOUN_LAMP = 0x20C,
564  NOUN_SCIMITAR = 0x20D,
565  NOUN_SITTING_PILLOW = 0x20E,
566  NOUN_WATER_GOURD = 0x20F,
567  NOUN_JAR = 0x210,
568  NOUN_TENT_POLE = 0x211,
569  NOUN_EXIT = 0x212,
570  NOUN_PARAPHERNALIA = 0x213,
571  NOUN_SLATHAN_NI_PATAN3 = 0x214,
572  NOUN_EYE_ROCK = 0x215,
573  NOUN_BODY_TREE = 0x216,
574  NOUN_CLEARING = 0x217,
575  NOUN_TENTACLES = 0x218,
576  NOUN_SPELL_SHIELD = 0x219,
577  NOUN_POOL_MONSTER = 0x21A,
578  NOUN_SHIFTER_BOULDER = 0x21B,
579  NOUN_DEAD_TREE = 0x21C,
580  NOUN_PIT = 0x21D,
581  NOUN_SHIFTER_VILLAGE = 0x21E,
582  NOUN_SLATHAN_SKY = 0x21F,
583  NOUN_SHIFTER = 0x220,
584  NOUN_WRECKED_BRIDGE = 0x222,
585  NOUN_SHACK = 0x223,
586  NOUN_WRECKED_SHACK = 0x224,
587  NOUN_WISE_SHIFTER = 0x225,
588  NOUN_GRASS = 0x226,
589  NOUN_ENTRANCE_TO_MAZE = 0x227,
590  NOUN_TOPIARY_TOAD = 0x228,
591  NOUN_BOULDER = 0x229,
592  NOUN_MUSHROOM = 0x22A,
593  NOUN_SLATHAN_SKY2 = 0x22B,
594  NOUN_GRETA = 0x22C,
595  NOUN_TREE_STUMP = 0x22D,
596  NOUN_SANCTUARY_WOODS = 0x22E,
597  NOUN_TOADS = 0x22F,
598  NOUN_DOOFUS = 0x230,
599  NOUN_SHIFTING_MONSTER = 0x231,
600  NOUN_SPRITE = 0x232,
601  NOUN_MAZE = 0x233,
602  NOUN_TOPIARY_TOADSTOOL = 0x234,
603  NOUN_TOPIARY_GARGOYLE = 0x235,
604  NOUN_TOPIARY_DRAGON = 0x236,
605  NOUN_GUARDIAN = 0x237,
606  NOUN_BUTTERFLY_KING = 0x238,
607  NOUN_ROBE = 0x239,
608  NOUN_CEDAR_CHEST = 0x23A,
609  NOUN_DRAGONSPHERE2 = 0x23B,
610  NOUN_PATH_TO_HIGHTOWER2 = 0x23C,
611  NOUN_CALIPH = 0x23D
612 };
613 
614 class SceneFactory {
615 public:
616  static SceneLogic *createScene(MADSEngine *vm);
617 };
618 
622 class DragonsphereScene : public SceneLogic {
623 protected:
624  DragonsphereGlobals &_globals;
625  GameDragonsphere &_game;
626  MADSAction &_action;
627 
631  Common::Path formAnimName(char sepChar, int suffixNum);
632 
636  void lowRoomsEntrySound();
637 public:
641  DragonsphereScene(MADSEngine *vm);
642 
643  void sub7178C();
644 };
645 
646 class SceneInfoDragonsphere : public SceneInfo {
647  friend class SceneInfo;
648 protected:
649  void loadCodes(BaseSurface &depthSurface, int variant) override;
650 
651  void loadCodes(BaseSurface &depthSurface, Common::SeekableReadStream *stream) override;
652 
656  SceneInfoDragonsphere(MADSEngine *vm) : SceneInfo(vm) {}
657 };
658 
659 // TODO: Temporary, remove once implemented properly
660 class DummyScene : public DragonsphereScene {
661 public:
662  DummyScene(MADSEngine *vm) : DragonsphereScene(vm) {
663  warning("Unimplemented scene");
664  }
665 
666  void setup() override {}
667  void enter() override {}
668  void actions() override {}
669 };
670 
671 } // End of namespace Dragonsphere
672 
673 } // End of namespace MADS
674 
675 #endif /* MADS_DRAGONSPHERE_SCENES_H */
676 
677 #endif
void warning(MSVC_PRINTF const char *s,...) GCC_PRINTF(1
Definition: path.h:52
Definition: stream.h:745
Definition: action.h:28