25 #include "common/error.h" 26 #include "common/events.h" 27 #include "common/platform.h" 28 #include "common/random.h" 29 #include "common/serializer.h" 31 #include "graphics/surface.h" 32 #include "graphics/managed_surface.h" 34 #include "engines/advancedDetector.h" 35 #include "engines/engine.h" 37 #include "gui/debugger.h" 39 #include "dgds/resource.h" 40 #include "dgds/clock.h" 41 #include "dgds/menu.h" 47 class ResourceManager;
67 const float MS_PER_FRAME = 16.6667f;
74 GID_COMINGATTRACTIONS,
80 enum DgdsDetailLevel {
99 enum DgdsMouseCursor {
100 kDgdsMouseGameDefault = -1,
127 static const byte HOC_CHAR_SWAP_ICONS[];
165 DgdsDetailLevel _detailLevel;
169 bool _justChangedScene1;
181 MenuId _menuToTrigger;
184 const char *_rstFileName;
188 bool _isAltDlgColors;
191 int16 _lastGlobalFade;
192 uint _lastGlobalFadedPal;
194 bool _debugShowHotAreas;
204 DgdsGameId getGameId()
const {
return _gameId; }
214 Decompressor *getDecompressor() {
return _decompressor; }
215 const SDSScene *getScene()
const {
return _scene; }
216 SDSScene *getScene() {
return _scene; }
217 GDSScene *getGDSScene() {
return _gdsScene; }
218 const FontManager *getFontMan()
const {
return _fontManager; }
222 Globals *getGameGlobals() {
return _gameGlobals; }
223 Inventory *getInventory() {
return _inventory; }
224 Clock &getClock() {
return _clock; }
228 bool changeScene(
int sceneNum);
229 void setMouseCursor(
int num);
231 int getTextSpeed()
const {
return _textSpeed; }
232 void setTextSpeed(int16 speed) { _textSpeed = speed; }
233 int16 getDifficulty()
const {
return _difficulty; }
234 void setDifficulty(int16 difficulty) { _difficulty = difficulty; }
235 DgdsDetailLevel getDetailLevel()
const {
return _detailLevel; }
236 void setDetailLevel(DgdsDetailLevel level) { _detailLevel = level; }
238 void setShowClock(
bool val);
239 bool justChangedScene1()
const {
return _justChangedScene1; }
264 void setBackgroundFile(
const Common::String &name) { _backgroundFile = name; }
265 const Common::String &getBackgroundFile()
const {
return _backgroundFile; }
266 void setMenuToTrigger(MenuId menu) { _menuToTrigger = menu; }
267 bool isInvButtonVisible()
const;
268 ShellGame *getShellGame() {
return _shellGame; }
269 HocIntro *getHocIntro() {
return _hocIntro; }
270 ChinaTrain *getChinaTrain() {
return _chinaTrain; }
271 ChinaTank *getChinaTank() {
return _chinaTank; }
272 DragonArcade *getDragonArcade() {
return _dragonArcade; }
273 uint32 getThisFrameMs()
const {
return _thisFrameMs; }
276 void setFlipMode(
bool mode) { _flipMode = mode; }
278 bool isEGA()
const {
return _isEGA; }
279 bool isDemo()
const {
return _isDemo; }
280 bool isAltDlgColors()
const {
return _isAltDlgColors; }
282 void enableKeymapper();
283 void disableKeymapper();
285 void setDebugShowHotAreas(
bool enable) { _debugShowHotAreas = enable; }
286 bool getDebugShowHotAreas()
const {
return _debugShowHotAreas; }
290 void dimPalForWillyDialog(
bool force);
297 void checkDrawInventoryButton();
299 void init(
bool restarting);
300 void loadGameFiles();
301 void loadRestartFile();
307 #endif // DGDS_DGDS_H Definition: managed_surface.h:51
EngineFeature
Definition: engine.h:253
Definition: game_palettes.h:45
Definition: advancedDetector.h:163
EventType
Definition: events.h:49
Definition: inventory.h:37
Definition: hoc_intro.h:33
Definition: serializer.h:79
Common::Error saveGameStream(Common::WriteStream *stream, bool isAutosave=false) override
Definition: dgds.h:247
bool canSaveAutosaveCurrently() override
bool hasFeature(EngineFeature f) const override
Definition: dgds.h:257
virtual Common::Error run() override
bool canLoadGameStateCurrently(Common::U32String *msg=nullptr) override
Definition: china_tank.h:28
bool canSaveGameStateCurrently(Common::U32String *msg=nullptr) override
Common::Error loadGameStream(Common::SeekableReadStream *stream) override
Definition: dgds.h:252
Definition: dragon_arcade.h:85
Definition: movie_decoder.h:32
Definition: decompress.h:67
Definition: china_train.h:159
Definition: shell_game.h:30
Language
Definition: language.h:45
Definition: resource.h:49