25 #include "common/text-to-speech.h" 27 #include "engines/engine.h" 30 #include "hugo/game.h" 31 #include "hugo/detection.h" 33 #define HUGO_DAT_VER_MAJ 0 // 1 byte 34 #define HUGO_DAT_VER_MIN 42 // 1 byte 35 #define DATAALIGNMENT 4 38 class SeekableReadStream;
57 static const int kSavegameVersion = 6;
58 static const int kInvDx = 32;
59 static const int kInvDy = 32;
60 static const int kMaxTunes = 16;
61 static const int kStepDx = 5;
62 static const int kStepDy = 4;
63 static const int kXPix = 320;
64 static const int kYPix = 200;
65 static const int kViewSizeX = kXPix;
66 static const int kViewSizeY = 192;
67 static const int kDibOffY = 0;
68 static const int kCompLineSize = 40;
69 static const int kMaxLineSize = kCompLineSize - 2;
70 static const int kMaxTextRows = 25;
71 static const int kMaxBoxChar = kMaxLineSize * kMaxTextRows;
72 static const int kOvlSize = kCompLineSize * kYPix;
73 static const int kStateDontCare = 0xFF;
74 static const int kHeroIndex = 0;
75 static const int kArrowNumb = 2;
76 static const int kLeftArrow = -2;
77 static const int kRightArrow = -3;
78 static const int kMaxPath = 256;
79 static const int kHeroMaxWidth = 24;
80 static const int kHeroMinWidth = 16;
82 typedef char Command[kMaxLineSize + 8];
88 bool _playlist[kMaxTunes];
91 typedef byte Icondib[kXPix * kInvDy];
92 typedef byte Viewdib[(long)kXPix * kYPix];
104 kActionMoveBottomRight,
105 kActionMoveBottomLeft,
116 enum HugoDebugChannels {
129 enum HugoRegistered {
138 enum Istate {kInventoryOff, kInventoryUp, kInventoryDown, kInventoryActive};
143 enum Vstate {kViewIdle, kViewIntroInit, kViewIntro, kViewPlay, kViewInvent, kViewExit};
154 enum {kPriorityForeground, kPriorityBackground, kPriorityFloating, kPriorityOverOverlay};
159 enum Dupdate {kDisplayInit, kDisplayAdd, kDisplayDisplay, kDisplayRestore};
164 enum Priority {kSoundPriorityLow, kSoundPriorityMedium, kSoundPriorityHigh};
178 bool _showBoundariesFl;
193 int _x1, _y1, _x2, _y2;
195 int16 _viewx, _viewy, _direction;
244 const char *_episode;
251 bool _voiceScoreLine;
252 bool _voiceSoundSetting;
253 bool _queueAllVoicing;
260 uint32 getFeatures()
const;
261 const char *getGameId()
const;
263 GameType getGameType()
const;
265 bool isPacked()
const;
269 assert(s_Engine !=
nullptr);
284 void readScreenFiles(
const int screen);
285 void setNewScreen(
const int screen);
287 void syncSoundSettings()
override;
290 int getScore()
const;
291 void setScore(
const int newScore);
292 void adjustScore(
const int adjustment);
293 int getMaxScore()
const;
294 void setMaxScore(
const int newScore);
298 const char *getCopyrightString()
const;
304 void sayText(
const Common::String &text, Common::TextToSpeechManager::Action action = Common::TextToSpeechManager::INTERRUPT);
326 static const int kTurboTps = 16;
341 void initPlaylist(
bool playlist[kMaxTunes]);
353 #endif // HUGO_HUGO_H
EngineFeature
Definition: engine.h:260
Definition: detection.h:50
Dupdate
Definition: hugo.h:159
Definition: schedule.h:516
Definition: inventory.h:38
Definition: algorithm.h:29
Vstate
Definition: hugo.h:143
Priority
Definition: hugo.h:164
Definition: default_display_client.h:65
Istate
Definition: hugo.h:138