22#ifndef CRUISE_CRUISE_H
23#define CRUISE_CRUISE_H
25#include "common/scummsys.h"
26#include "common/util.h"
27#include "common/random.h"
28#include "common/text-to-speech.h"
30#include "engines/engine.h"
32#include "cruise/cruise_main.h"
33#include "cruise/debugger.h"
34#include "cruise/sound.h"
46#define GAME_FRAME_DELAY_1 50
47#define GAME_FRAME_DELAY_2 100
49#define MAX_LANGUAGE_STRINGS 25
61 kActionEndUserWaiting,
62 kActionIncreaseGameSpeed,
63 kActionDecreaseGameSpeed
66enum LangStringId { ID_PAUSED = 0, ID_INVENTORY = 5, ID_SPEAK_ABOUT = 6, ID_PLAYER_MENU = 7,
67 ID_SAVE = 9, ID_LOAD = 10, ID_RESTART = 11, ID_QUIT = 12};
69struct CRUISEGameDescription;
76 CursorType _savedCursor;
82 Common::CodePage _ttsTextEncoding;
86 bool loadLanguageStrings();
102 int getGameType()
const;
103 const char *getGameId()
const;
104 uint32 getFeatures()
const;
107 PCSound &sound() {
return *_sound; }
109 const char *langString(LangStringId langId) {
return _langStrings[(int)langId].c_str(); }
110 void sayText(
const Common::String &text, Common::TextToSpeechManager::Action action);
111 void sayQueuedText(Common::TextToSpeechManager::Action action);
112 void stopTextToSpeech();
114 static const char *getSavegameFile(
int saveGameIdx);
132 static uint32
const cookie = 0x41424344;
153 bool _mouseButtonDown;
154 bool _menuJustOpened;
159#define BOOT_PRC_NAME "AUTO00.PRC"
162 VAR_MOUSE_X_MODE = 253,
163 VAR_MOUSE_X_POS = 249,
164 VAR_MOUSE_Y_MODE = 251,
165 VAR_MOUSE_Y_POS = 250
169 MOUSE_CURSOR_NORMAL = 0,
175 kCruiseDebugScript = 1,
Common::Error saveGameState(int slot, const Common::String &desc, bool isAutosave=false) override
Common::Error loadGameState(int slot) override
void syncSoundSettings() override
Common::String getSaveStateName(int slot) const override
Definition: cruise.h:119
bool canLoadGameStateCurrently(Common::U32String *msg=nullptr) override
bool canSaveGameStateCurrently(Common::U32String *msg=nullptr) override
Common::Error run() override
bool hasFeature(EngineFeature f) const override
EngineFeature
Definition: engine.h:282
Language
Definition: language.h:45
Definition: detection.h:27