ScummVM API documentation
nebular_scenes7.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_NEBULAR_SCENES7_H
23 #define MADS_NEBULAR_SCENES7_H
24 
25 #include "common/scummsys.h"
26 #include "mads/game.h"
27 #include "mads/scene.h"
28 #include "mads/nebular/nebular_scenes.h"
29 
30 namespace MADS {
31 
32 namespace Nebular {
33 
34 class Scene7xx : public NebularScene {
35 protected:
39  void setAAName();
40 
45 
46  void sceneEntrySound();
47 
48 public:
49  Scene7xx(MADSEngine *vm) : NebularScene(vm) {}
50 };
51 
52 class Scene701 : public Scene7xx {
53 private:
54  int _fishingLineId;
55 
56 public:
57  Scene701(MADSEngine *vm);
58  void synchronize(Common::Serializer &s) override;
59 
60  void setup() override;
61  void enter() override;
62  void preActions() override;
63  void actions() override;
64  void step() override;
65 };
66 
67 class Scene702 : public Scene7xx {
68 public:
69  Scene702(MADSEngine *vm) : Scene7xx(vm) {}
70 
71  void setup() override;
72  void enter() override;
73  void preActions() override;
74  void actions() override;
75 };
76 
77 class Scene703 : public Scene7xx{
78 private:
79  int _monsterMode;
80  int _boatFrame;
81  int _curSequence;
82  int _boatDir;
83 
84  bool _useBomb;
85  bool _startMonsterTimer;
86  bool _rexDeathFl;
87  bool _restartTrigger70Fl;
88 
89  uint32 _lastFrameTime;
90  uint32 _monsterTime;
91 
92  Conversation _dialog1;
93 
94  void handleBottleInterface();
95  void setBottleSequence();
96  void handleFillBottle(int quote);
97 
98 public:
99  Scene703(MADSEngine *vm);
100  void synchronize(Common::Serializer &s) override;
101 
102  void setup() override;
103  void enter() override;
104  void step() override;
105  void actions() override;
106 };
107 
108 class Scene704 : public Scene7xx{
109 private:
110  int _bottleHotspotId;
111  int _boatCurrentFrame;
112  int _animationMode;
113  int _boatDirection;
114 
115  bool _takeBottleFl;
116 
117  Conversation _dialog1;
118 
119  void handleFillBottle(int quote);
120  void setBottleSequence();
121  void handleBottleInterface();
122 
123 public:
124  Scene704(MADSEngine *vm);
125  void synchronize(Common::Serializer &s) override;
126 
127  void setup() override;
128  void enter() override;
129  void step() override;
130  void actions() override;
131 };
132 
133 class Scene705 : public Scene7xx{
134 private:
135  Conversation _dialog1;
136 
137  void handleFillBottle(int quote);
138  void setBottleSequence();
139  void handleBottleInterface();
140 
141 public:
142  Scene705(MADSEngine *vm) : Scene7xx(vm) {}
143  void synchronize(Common::Serializer &s) override;
144 
145  void setup() override;
146  void enter() override;
147  void step() override;
148  void actions() override;
149 };
150 
151 class Scene706 : public Scene7xx{
152 private:
153  int _vaseHotspotId;
154  int _vaseMode;
155  int _animationMode;
156  int _animationFrame;
157 
158  bool _emptyPedestral;
159 
160  void handleTakeVase();
161  void handleRexDeath();
162 
163 public:
164  Scene706(MADSEngine *vm);
165  void synchronize(Common::Serializer &s) override;
166 
167  void setup() override;
168  void enter() override;
169  void step() override;
170  void preActions() override;
171  void actions() override;
172 };
173 
174 class Scene707 : public SceneTeleporter {
175 public:
176  Scene707(MADSEngine *vm) : SceneTeleporter(vm) {}
177 
178  void setup() override;
179  void enter() override;
180  void step() override;
181  void actions() override;
182 };
183 
184 class Scene710 : public Scene7xx {
185 public:
186  Scene710(MADSEngine *vm) : Scene7xx(vm) {}
187 
188  void setup() override;
189  void enter() override;
190  void step() override;
191  void actions() override;
192 };
193 
194 class Scene711 : public SceneTeleporter {
195 public:
196  Scene711(MADSEngine *vm) : SceneTeleporter(vm) {}
197 
198  void setup() override;
199  void enter() override;
200  void step() override;
201  void actions() override;
202 };
203 
204 class Scene751 : public Scene7xx{
205 private:
206  bool _rexHandingLine;
207 
208 public:
209  Scene751(MADSEngine *vm);
210  void synchronize(Common::Serializer &s) override;
211 
212  void setup() override;
213  void enter() override;
214  void step() override;
215  void preActions() override;
216  void actions() override;
217 };
218 
219 class Scene752 : public Scene7xx {
220 private:
221  int _cardId;
222 
223 public:
224  Scene752(MADSEngine *vm);
225  void synchronize(Common::Serializer &s) override;
226 
227  void setup() override;
228  void enter() override;
229  void step() override;
230  void preActions() override;
231  void actions() override;
232 };
233 
234 } // End of namespace Nebular
235 } // End of namespace MADS
236 
237 #endif /* MADS_NEBULAR_SCENES7_H */
virtual void synchronize(Common::Serializer &s)
Definition: scene_data.h:126
Definition: nebular_scenes7.h:133
virtual void actions()=0
Definition: nebular_scenes7.h:219
Definition: nebular_scenes7.h:184
virtual void preActions()
Definition: scene_data.h:106
virtual void enter()=0
Definition: nebular_scenes7.h:151
Definition: serializer.h:79
virtual void setup()=0
Definition: nebular_scenes7.h:174
NebularScene(MADSEngine *vm)
Definition: nebular_scenes7.h:34
Definition: nebular_scenes7.h:194
Definition: nebular_scenes7.h:77
Definition: mads.h:87
Definition: nebular_scenes7.h:52
Definition: nebular_scenes.h:1348
Definition: action.h:28
Definition: nebular_scenes7.h:108
Definition: nebular_scenes.h:1385
Definition: nebular_scenes7.h:67
virtual void step()
Definition: scene_data.h:101
Definition: user_interface.h:96
Definition: nebular_scenes7.h:204