ScummVM API documentation
room111.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_ROOM111_H
23
#define MADS_PHANTOM_ROOM111_H
24
25
#include "mads/phantom/rooms/section1.h"
26
#include "mads/phantom/global.h"
27
28
namespace
MADS {
29
namespace
Phantom {
30
namespace
Rooms {
31
32
#define local (&scratch)
33
#define ss local->sprite
34
#define seq local->sequence
35
#define aa local->animation
36
37
struct
Scratch {
/* Room local variables */
38
39
int16 sprite[15];
/* Sprite series handles */
40
int16 sequence[15];
/* Sequence handles */
41
int16 animation[4];
/* Animation handles */
42
int16 delete_axe;
/* true if axe was deleted */
43
int16 anim_0_running;
44
int16 anim_1_running;
45
int16 listen_frame;
46
int16 listen_action;
47
int16 it_is_closed;
48
49
};
50
51
52
/* ========================= Sprite Series ========================= */
53
54
#define fx_take_9 0
/* rdr_9 */
55
#define fx_1993 1
/* rm111z */
56
#define fx_axe 2
/* rm111a1 */
57
#define fx_broken_axe 3
/* rm111a2 */
58
#define fx_open_door 4
/* rm111a3 */
59
#define fx_door 5
/* rm111x0 */
60
61
62
/* ========================= Conversation ========================== */
63
64
#define CONV_LISTEN 14
65
#define CONV14_LISTEN 0
66
#define CONV14_UN_LISTEN 1
67
68
69
/* ========================= Triggers ============================== */
70
71
#define ROOM_111_MADE_IT_OUT_DOOR 60
72
#define ROOM_111_CLOSED_DOOR 62
73
#define ROOM_111_AT_LISTEN_POINT 64
74
#define ROOM_111_LISTEN 66
75
#define ROOM_111_UN_LISTEN 68
76
#define ROOM_111_DONE_LISTENING 70
77
#define ROOM_111_NOTHING 72
78
79
80
/* ========================= Player positions ====================== */
81
82
#define PLAYER_X_FROM_113 112
83
#define PLAYER_Y_FROM_113 126
84
85
#define PLAYER_X_FROM_113_SAWDUST 146
86
#define PLAYER_Y_FROM_113_SAWDUST 108
87
88
#define PLAYER_X_FROM_109 311
89
#define PLAYER_Y_FROM_109 150
90
91
#define OFF_SCREEN_X_FROM_109 335
92
#define OFF_SCREEN_Y_FROM_109 150
93
94
#define LISTEN_X 119
95
#define LISTEN_Y 124
96
97
98
/* ========================= Door approach positions =============== */
99
100
#define FRONT_RIGHT_DOOR_X 219
101
#define FRONT_RIGHT_DOOR_Y 131
102
103
#define FRONT_LEFT_DOOR_X 109
104
#define FRONT_LEFT_DOOR_Y 124
105
106
#define WALK_TO_X_INSIDE_112 145
107
#define WALK_TO_Y_INSIDE_112 108
108
109
#define AFTER_AXE_ANIM_X 126
110
#define AFTER_AXE_ANIM_Y 126
111
112
113
/* ========================= Wall dynamic hotspot ================== */
114
115
#define WALL_X 35
116
#define WALL_Y 82
117
#define WALL_X_SIZE 13
118
#define WALL_Y_SIZE 11
119
120
#define WALL_WALK_X 78
121
#define WALL_WALK_Y 122
122
123
124
extern
void
room_111_init();
125
extern
void
room_111_daemon();
126
extern
void
room_111_pre_parser();
127
extern
void
room_111_parser();
128
extern
void
room_111_preload();
129
130
}
// namespace Rooms
131
}
// namespace Phantom
132
}
// namespace MADS
133
134
#endif
engines
mads
phantom
rooms
room111.h
Generated on Sun Oct 25 2026 09:21:52 for ScummVM API documentation by
1.9.4