ScummVM API documentation
group4.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 GNAP_GROUP4_H
23#define GNAP_GROUP4_H
24
25#include "gnap/debugger.h"
26
27namespace Gnap {
28
29enum {
30 kHS40Platypus = 0,
31 kHS40ExitCave = 1,
32 kHS40ExitToyStand = 2,
33 kHS40ExitBBQ = 3,
34 kHS40ExitUfo = 4,
35 kHS40ExitKissinBooth = 5,
36 kHS40ExitDancefloor = 6,
37 kHS40ExitShoe = 7,
38 kHS40Device = 8
39};
40
41enum {
42 kHS41Platypus = 0,
43 kHS41ExitCave = 1,
44 kHS41Exit = 2,
45 kHS41ExitBBQ = 3,
46 kHS41ToyVendor = 4,
47 kHS41Kid = 5,
48 kHS41ToyUfo = 6,
49 kHS41Device = 7,
50 kHS41WalkArea1 = 8
51};
52
53enum {
54 kHS41UfoExitLeft = 1,
55 kHS41UfoExitRight = 2,
56 kHS41UfoDevice = 3,
57 kHS41UfoWalkArea1 = 4
58};
59
60enum {
61 kHS42Platypus = 0,
62 kHS42ExitUfoParty = 1,
63 kHS42ExitToyStand = 2,
64 kHS42ExitUfo = 3,
65 kHS42BBQVendor = 4,
66 kHS42ChickenLeg = 5,
67 kHS42Device = 6,
68 kHS42WalkArea1 = 7,
69 kHS42WalkArea2 = 8
70};
71
72enum {
73 kHS42UfoExitLeft = 1,
74 kHS42UfoExitRight = 2,
75 kHS42UfoHotSauce = 3,
76 kHS42UfoDevice = 4
77};
78
79enum {
80 kHS43Platypus = 0,
81 kHS43Device = 1,
82 kHS43ExitUfoParty = 2,
83 kHS43ExitBBQ = 3,
84 kHS43ExitKissinBooth = 4,
85 kHS43TwoHeadedGuy = 5,
86 kHS43Key = 6,
87 kHS43Ufo = 7,
88 kHS43WalkArea1 = 8,
89 kHS43WalkArea2 = 9
90};
91
92enum {
93 kHS43UfoExitLeft = 1,
94 kHS43UfoExitRight = 2,
95 kHS43UfoKey = 3,
96 kHS43UfoBucket = 4,
97 kHS43UfoDevice = 5
98};
99
100enum {
101 kHS44Platypus = 0,
102 kHS44ExitUfoParty = 1,
103 kHS44ExitUfo = 2,
104 kHS44ExitShow = 3,
105 kHS44KissingLady = 4,
106 kHS44Spring = 5,
107 kHS44SpringGuy = 6,
108 kHS44Device = 7,
109 kHS44WalkArea1 = 8,
110 kHS44WalkArea2 = 9
111};
112
113enum {
114 kHS44UfoExitLeft = 1,
115 kHS44UfoExitRight = 2,
116 kHS44UfoDevice = 3
117};
118
119enum {
120 kHS45Platypus = 0,
121 kHS45ExitUfoParty = 1,
122 kHS45ExitShoe = 2,
123 kHS45ExitRight = 3,
124 kHS45ExitDiscoBall = 4,
125 kHS45DiscoBall = 5,
126 kHS45Device = 6,
127 kHS45WalkArea1 = 7
128};
129
130enum {
131 kHS45UfoExitLeft = 1,
132 kHS45UfoExitRight = 2,
133 kHS45UfoDevice = 3
134};
135
136enum {
137 kHS46Platypus = 0,
138 kHS46ExitUfoParty = 1,
139 kHS46ExitKissinBooth = 2,
140 kHS46ExitDisco = 3,
141 kHS46SackGuy = 4,
142 kHS46ItchyGuy = 5,
143 kHS46Device = 6,
144 kHS46WalkArea1 = 7
145};
146
147enum {
148 kHS46UfoExitLeft = 1,
149 kHS46UfoExitRight = 2,
150 kHS46UfoDevice = 3
151};
152
153enum {
154 kAS41LeaveScene = 0,
155 kAS41UseQuarterWithToyVendor = 1,
156 kAS41TalkToyVendor = 2,
157 kAS41UseGumWithToyUfo = 3,
158 kAS41UseChickenBucketWithKid = 4,
159 kAS41GrabKid = 5,
160 kAS41GiveBackToyUfo = 6,
161 kAS41ToyUfoLeaveScene = 7,
162 kAS41ToyUfoRefresh = 8,
163 kAS41UfoGumAttached = 9
164};
165
166enum {
167 kAS42LeaveScene = 0,
168 kAS42TalkBBQVendor = 1,
169 kAS42UseQuarterWithBBQVendor = 2,
170 kAS42UseQuarterWithBBQVendorDone = 3,
171 kAS42GrabChickenLeg = 4,
172 kAS42ToyUfoLeaveScene = 5,
173 kAS42ToyUfoRefresh = 6,
174 kAS42ToyUfoPickUpHotSauce = 7
175};
176
177/*****************************************************************************/
178
179class GnapEngine;
180class CutScene;
181
182class Scene40: public Scene {
183public:
184 Scene40(GnapEngine *vm);
185 ~Scene40() override {}
186
187 int init() override;
188 void updateHotspots() override;
189 void run() override;
190 void updateAnimations() override;
191 void updateAnimationsCb() override {};
192};
193
194class Scene41: public Scene {
195public:
196 Scene41(GnapEngine *vm);
197 ~Scene41() override {}
198
199 int init() override;
200 void updateHotspots() override;
201 void run() override;
202 void updateAnimations() override;
203 void updateAnimationsCb() override {};
204
205private:
206 int _currKidSequenceId;
207 int _nextKidSequenceId;
208 int _currToyVendorSequenceId;
209 int _nextToyVendorSequenceId;
210};
211
212class Scene42: public Scene {
213public:
214 Scene42(GnapEngine *vm);
215 ~Scene42() override {}
216
217 int init() override;
218 void updateHotspots() override;
219 void run() override;
220 void updateAnimations() override;
221 void updateAnimationsCb() override {};
222
223private:
224 int _currBBQVendorSequenceId;
225 int _nextBBQVendorSequenceId;
226};
227
228class Scene43: public Scene {
229public:
230 Scene43(GnapEngine *vm);
231 ~Scene43() override {}
232
233 int init() override;
234 void updateHotspots() override;
235 void run() override;
236 void updateAnimations() override;
237 void updateAnimationsCb() override {};
238
239private:
240 int _currTwoHeadedGuySequenceId;
241 int _nextTwoHeadedGuySequenceId;
242};
243
244class Scene44: public Scene {
245public:
246 Scene44(GnapEngine *vm);
247 ~Scene44() override {}
248
249 int init() override;
250 void updateHotspots() override;
251 void run() override;
252 void updateAnimations() override;
253 void updateAnimationsCb() override {};
254
255private:
256 int _nextSpringGuySequenceId;
257 int _nextKissingLadySequenceId;
258 int _currSpringGuySequenceId;
259 int _currKissingLadySequenceId;
260};
261
262class Scene45: public Scene {
263public:
264 Scene45(GnapEngine *vm);
265 ~Scene45() override {}
266
267 int init() override;
268 void updateHotspots() override;
269 void run() override;
270 void updateAnimations() override;
271 void updateAnimationsCb() override {};
272
273private:
274 int _currDancerSequenceId;
275};
276
277class Scene46: public Scene {
278public:
279 Scene46(GnapEngine *vm);
280 ~Scene46() override {}
281
282 int init() override;
283 void updateHotspots() override;
284 void run() override;
285 void updateAnimations() override;
286 void updateAnimationsCb() override {};
287
288private:
289 int _currSackGuySequenceId;
290 int _nextItchyGuySequenceId;
291 int _nextSackGuySequenceId;
292 int _currItchyGuySequenceId;
293};
294
295} // End of namespace Gnap
296
297#endif // GNAP_GROUP4_H
Definition: gnap.h:222
Definition: group4.h:182
Definition: group4.h:194
Definition: group4.h:212
Definition: group4.h:228
Definition: group4.h:244
Definition: group4.h:262
Definition: group4.h:277
Definition: scenecore.h:31