ScummVM API documentation
room453.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#ifndef MADS_PHANTOM_ROOM453_H
23#define MADS_PHANTOM_ROOM453_H
24
25#include "mads/core/general.h"
26
27namespace MADS {
28namespace Phantom {
29namespace Rooms {
30
31#define local (&scratch)
32#define ss local->sprite
33#define seq local->sequence
34#define aa local->animation
35
36struct Scratch { /* Room local variables */
37
38 int16 sprite[15]; /* Sprite series handles */
39 int16 sequence[15]; /* Sequence handles */
40 int16 animation[4]; /* Animation handles */
41 int16 frame_is_here; /* T if any frame is here */
42 int16 dyn_red;
43 int16 dyn_green;
44 int16 dyn_blue;
45 int16 dyn_yellow;
46 int16 frame_here_for_taking; /* T if a specific frame is here */
47
48
49};
50
51
52/* ========================= Sprite Series =================== */
53
54#define fx_west 0 /* rm453c0 */
55#define fx_north 1 /* rm453c1 */
56#define fx_east 2 /* rm453c2 */
57
58#define fx_drain 3
59#define fx_rat_nest 4
60#define fx_web 5
61#define fx_brick 6
62#define fx_stone 7
63
64#define fx_bend_down_9 8 /* rrd_9 */
65#define fx_red_frame 9 /* rm453f0 */
66#define fx_green_frame 10 /* rm453f1 */
67#define fx_blue_frame 11 /* rm453f2 */
68#define fx_yellow_frame 12 /* rm453f3 */
69
70#define fx_gate 13 /* rm405c8 */
71
72
73
74/* ========================= Triggers ======================== */
75
76
77
78/* ========================= Other Macros ==================== */
79
80#define NORTH_X 107
81#define NORTH_Y 87
82
83#define WALK_TO_NORTH_X 107
84#define WALK_TO_NORTH_Y 98
85
86#define WEST_X -20
87#define WEST_Y 128
88
89#define WALK_TO_WEST_X 19
90#define WALK_TO_WEST_Y 128
91
92#define EAST_X 316
93#define EAST_Y 129
94
95#define WALK_TO_EAST_X 277
96#define WALK_TO_EAST_Y 129
97
98#define BRICK_1_X 138
99#define BRICK_1_Y 35
100
101#define BRICK_2_X 84
102#define BRICK_2_Y 27
103
104} // namespace Rooms
105} // namespace Phantom
106} // namespace MADS
107
108#endif