25 #include "agds/database.h" 26 #include "agds/dialog.h" 27 #include "agds/inventory.h" 28 #include "agds/mouseMap.h" 29 #include "agds/processExitCode.h" 30 #include "agds/resourceManager.h" 31 #include "agds/screen.h" 32 #include "agds/soundManager.h" 33 #include "agds/textLayout.h" 34 #include "common/array.h" 35 #include "common/hashmap.h" 36 #include "common/ptr.h" 37 #include "common/random.h" 38 #include "common/rect.h" 39 #include "common/scummsys.h" 40 #include "engines/advancedDetector.h" 41 #include "graphics/pixelformat.h" 42 #include "video/flic_decoder.h" 84 static constexpr uint MaxProcesses = 100;
107 return _globals.contains(name);
116 void fadeAndReactivate();
128 void runProcess(
const ObjectPtr &
object, uint ip = 0);
132 void runPendingReactivatedProcesses();
134 void resetCurrentScreen();
135 void loadScreen(
const Common::String &name, ScreenLoadingType type,
bool savePatch =
true);
136 void loadNextScreen();
137 void saveScreenPatch();
145 bool active()
const {
return !_mjpgPlayer; }
150 return _resourceManager;
154 return _soundManager;
173 Screen *getCurrentScreen() {
174 return _currentScreen.get();
179 return _currentScreenName;
195 void loadFont(
int id,
const Common::String &name,
int gw,
int gh);
203 return _currentCharacterName == name ? _currentCharacter.get() :
nullptr;
206 return _currentCharacter.get();
213 _defaultMouseCursorName = name;
214 _defaultMouseCursor = loadMouseCursor(name);
217 void changeMouseArea(
int id,
int enabled);
219 void enableUser(
bool enabled) {
220 _userEnabled = enabled;
222 void enableSystemUser(
bool enabled) {
223 _systemUserEnabled = enabled;
226 bool userEnabled()
const {
227 return _userEnabled && _systemUserEnabled && !_mjpgPlayer;
231 void initSystemVariables();
234 void setNextScreenName(
const Common::String &nextScreenName, ScreenLoadingType type);
235 void returnToPreviousScreen();
237 void tickInventory();
239 void playSoundSync(
int syncSoundId) {
240 _syncSoundId = syncSoundId;
243 void setAmbientSoundId(
int id) {
245 _ambientSoundId = id;
250 bool fastMode()
const {
258 void currentInventoryObject(
const ObjectPtr &
object);
259 void resetCurrentInventoryObject();
261 const ObjectPtr ¤tInventoryObject()
const {
262 return _currentInventoryObject;
265 bool showHints()
const {
274 void shadowIntensity(
int intensity) {
275 _shadowIntensity = intensity;
277 int getRandomNumber(
int max);
279 void curtain(
const Common::String &process,
int screen,
int sound,
int music,
bool updateGlobals);
280 bool activeCurtain()
const {
281 return _curtainTimer >= 0;
286 void stopAmbientSound();
311 int _sharedStorageIndex;
318 Color _minShadowColor;
319 Color _maxShadowColor;
320 int _shadowIntensity;
328 Common::String _currentCharacterName, _currentCharacterFilename, _currentCharacterObject;
330 ScreenLoadingType _nextScreenType;
335 bool _systemUserEnabled;
Definition: managed_surface.h:51
EngineFeature
Definition: engine.h:258
Definition: advancedDetector.h:164
Definition: character.h:48
Definition: textLayout.h:39
Definition: atari-screen.h:58
Definition: resourceManager.h:40
Definition: database.h:33
bool canSaveGameStateCurrently(Common::U32String *msg) override
Definition: agds.h:123
Definition: inventory.h:41
Definition: formatinfo.h:28
void initGraphics(int width, int height)
Definition: systemVariable.h:35
Definition: soundManager.h:64
bool canLoadGameStateCurrently(Common::U32String *msg) override
Definition: agds.h:122
Definition: mouseMap.h:63