ScummVM API documentation
Illusions::IllusionsEngine_BBDOU Class Reference
Inheritance diagram for Illusions::IllusionsEngine_BBDOU:
Illusions::IllusionsEngine Engine

Public Member Functions

 IllusionsEngine_BBDOU (OSystem *syst, const IllusionsGameDescription *gd)
 
void initInput ()
 
void initUpdateFunctions ()
 
int updateScript (uint flags)
 
int updateMenuKeys (uint flags)
 
bool causeIsDeclared (uint32 sceneId, uint32 verbId, uint32 objectId2, uint32 objectId)
 
void causeDeclare (uint32 verbId, uint32 objectId2, uint32 objectId, TriggerFunctionCallback *callback)
 
uint32 causeTrigger (uint32 sceneId, uint32 verbId, uint32 objectId2, uint32 objectId, uint32 callingThreadId)
 
int updateVideoPlayer (uint flags)
 
void playVideo (uint32 videoId, uint32 objectId, uint32 priority, uint32 callingThreadId)
 
bool isVideoPlaying () override
 
void setDefaultTextCoords () override
 
void loadSpecialCode (uint32 resId) override
 
void unloadSpecialCode (uint32 resId) override
 
void notifyThreadId (uint32 &threadId) override
 
bool testMainActorFastWalk (Control *control) override
 
bool testMainActorCollision (Control *control) override
 
ControlgetObjectControl (uint32 objectId) override
 
Common::Point getNamedPointPosition (uint32 namedPointId) override
 
uint32 getPriorityFromBase (int16 priority) override
 
uint32 getCurrentScene () override
 
uint32 getPrevScene () override
 
bool isCursorObject (uint32 actorTypeId, uint32 objectId) override
 
void setCursorControlRoutine (Control *control) override
 
void placeCursorControl (Control *control, uint32 sequenceId) override
 
void setCursorControl (Control *control) override
 
void showCursor () override
 
void hideCursor () override
 
void cursorControlRoutine (Control *control, uint32 deltaTime)
 
void startScriptThreadSimple (uint32 threadId, uint32 callingThreadId) override
 
void startScriptThread (uint32 threadId, uint32 callingThreadId, uint32 value8, uint32 valueC, uint32 value10)
 
void startAnonScriptThread (int32 threadId, uint32 callingThreadId, uint32 value8, uint32 valueC, uint32 value10)
 
uint32 startAbortableTimerThread (uint32 duration, uint32 threadId)
 
uint32 startTimerThread (uint32 duration, uint32 threadId)
 
uint32 startAbortableThread (byte *scriptCodeIp1, byte *scriptCodeIp2, uint32 callingThreadId)
 
uint32 startTalkThread (int16 duration, uint32 objectId, uint32 talkId, uint32 sequenceId1, uint32 sequenceId2, uint32 namedPointId, uint32 callingThreadId)
 
uint32 startTempScriptThread (byte *scriptCodeIp, uint32 callingThreadId, uint32 value8, uint32 valueC, uint32 value10) override
 
void newScriptThread (uint32 threadId, uint32 callingThreadId, uint notifyFlags, byte *scriptCodeIp, uint32 value8, uint32 valueC, uint32 value10)
 
uint32 newTimerThread (uint32 duration, uint32 callingThreadId, bool isAbortable)
 
uint32 newTempThreadId ()
 
bool enterScene (uint32 sceneId, uint32 threadId)
 
void exitScene (uint32 threadId)
 
void enterPause (uint32 threadId)
 
void leavePause (uint32 threadId)
 
void dumpActiveScenes (uint32 sceneId, uint32 threadId)
 
void pause (uint32 callerThreadId)
 
void unpause (uint32 callerThreadId)
 
void enterMenuPause ()
 
void leaveMenuPause ()
 
void setSceneIdThreadId (uint32 theSceneId, uint32 theThreadId)
 
bool findTriggerCause (uint32 sceneId, uint32 verbId, uint32 objectId2, uint32 objectId, uint32 &codeOffs)
 
void reset ()
 
void loadSavegameFromScript (int16 slotNum, uint32 callingThreadId)
 
void saveSavegameFromScript (int16 slotNum, uint32 callingThreadId)
 
void activateSavegame (uint32 callingThreadId)
 
void resumeFromSavegame ()
 
- Public Member Functions inherited from Illusions::IllusionsEngine
 IllusionsEngine (OSystem *syst, const IllusionsGameDescription *gd)
 
const Common::String getTargetName ()
 
void updateEvents ()
 
int getGameId () const
 
Common::Language getGameLanguage () const
 
void runUpdateFunctions ()
 
int updateActors (uint flags)
 
int updateSequences (uint flags)
 
int updateGraphics (uint flags)
 
int updateSoundMan (uint flags)
 
int updateSprites (uint flags)
 
uint32 getElapsedUpdateTime ()
 
Common::PointgetObjectActorPositionPtr (uint32 objectId)
 
int getRandom (int max)
 
int convertPanXCoord (int16 x)
 
bool calcPointDirection (Common::Point &srcPt, Common::Point &dstPt, uint &facing)
 
bool isSoundActive ()
 
virtual void updateFader ()
 
virtual void clearFader ()
 
virtual void pauseFader ()
 
virtual void unpauseFader ()
 
void setCurrFontId (uint32 fontId)
 
bool checkActiveTalkThreads ()
 
void setTextDuration (int kind, uint32 duration)
 
uint32 clipTextDuration (uint32 duration)
 
void getDefaultTextDimensions (WidthHeight &dimensions)
 
void setDefaultTextDimensions (WidthHeight &dimensions)
 
void getDefaultTextPosition (Common::Point &position)
 
void setDefaultTextPosition (Common::Point &position)
 
uint16 getSubtitleDuration ()
 
void setSubtitleDuration (uint16 duration)
 
FramesListfindActorSequenceFrames (Sequence *sequence)
 
bool canLoadGameStateCurrently (Common::U32String *msg=nullptr) override
 
bool canSaveGameStateCurrently (Common::U32String *msg=nullptr) override
 
Common::Error loadGameState (int slot) override
 
Common::Error saveGameState (int slot, const Common::String &desc, bool isAutosave=false) override
 
Common::Error removeGameState (int slot)
 
bool savegame (const char *filename, const char *description)
 
bool loadgame (const char *filename)
 
bool existsSavegame (int num)
 
- Public Member Functions inherited from Engine
MetaEnginegetMetaEngine () const
 
void setMetaEngine (MetaEngine *metaEngine)
 
PauseToken pauseEngine ()
 
bool isPaused () const
 
void openMainMenuDialog ()
 
uint32 getTotalPlayTime () const
 
void setTotalPlayTime (uint32 time=0)
 
Common::TimerManagergetTimerManager ()
 
Common::EventManagergetEventManager ()
 
Common::SaveFileManagergetSaveFileManager ()
 
bool existExtractedCDAudioFiles (uint track=1)
 
bool isDataAndCDAudioReadFromSameCD ()
 
void warnMissingExtractedCDAudio ()
 
void handleAutoSave ()
 
void saveAutosaveIfEnabled ()
 
virtual bool canSaveAutosaveCurrently ()
 
virtual int getAutosaveSlot () const
 
 Engine (OSystem *syst)
 
virtual ~Engine ()
 
virtual void initializePath (const Common::FSNode &gamePath)
 
virtual void errorString (const char *buf_input, char *buf_output, int buf_output_size)
 
virtual GUI::DebuggergetDebugger () final
 
void setDebugger (GUI::Debugger *debugger)
 
GUI::DebuggergetOrCreateDebugger ()
 
bool enhancementEnabled (int32 cls)
 
virtual void syncSoundSettings ()
 
virtual void applyGameSettings ()
 
virtual void flipMute ()
 
virtual Common::String getSaveStateName (int slot) const
 
virtual Common::Error loadGameStream (Common::SeekableReadStream *stream)
 
void setGameToLoadSlot (int slot)
 
virtual Common::Error saveGameStream (Common::WriteStream *stream, bool isAutosave=false)
 
bool saveGameDialog ()
 
bool loadGameDialog ()
 

Public Attributes

ScriptMan * _scriptMan
 
TriggerFunctions_triggerFunctions
 
Cursor_cursor
 
ActiveScenes _activeScenes
 
uint32 _prevSceneId
 
uint32 _theSceneId
 
uint32 _theThreadId
 
uint32 _globalSceneId
 
bool _loadGameResult
 
bool _saveGameResult
 
BBDOUMenuSystem_menuSystem
 
BBDOUVideoPlayer_videoPlayer
 
BBDOUMenuKeys_menuKeys
 
bool _walkthroughStarted
 
bool _canResumeFromSavegame
 
- Public Attributes inherited from Illusions::IllusionsEngine
Common::RandomSource_random
 
Dictionary_dict
 
ResourceSystem_resSys
 
BaseResourceReader_resReader
 
UpdateFunctions_updateFunctions
 
GameState_gameState
 
Screen_screen
 
ScreenPaletteBase_screenPalette
 
ScreenText_screenText
 
Input_input
 
ActorInstanceList_actorInstances
 
BackgroundInstanceList_backgroundInstances
 
Camera_camera
 
Controls_controls
 
TalkInstanceList_talkItems
 
ScriptOpcodes_scriptOpcodes
 
SpecialCode_specialCode
 
ThreadList_threads
 
SoundMan_soundMan
 
uint32 _nextTempThreadId
 
bool _doScriptThreadInit
 
ScriptStack_stack
 
ScriptResource_scriptResource
 
bool _rerunThreads
 
Fader_fader
 
int _pauseCtr
 
int _resGetCtr
 
uint32 _resGetTime
 
bool _unpauseControlActorFlag
 
uint32 _lastUpdateTime
 
int _resumeFromSavegameRequested
 
int _savegameSlotNum
 
Common::String _savegameDescription
 
uint32 _savegameSceneId
 
uint32 _savegameThreadId
 
uint32 _fontId
 
int _field8
 
uint32 _fieldA
 
uint32 _subtitleDuration
 
WidthHeight _defaultTextDimensions
 
Common::Point _defaultTextPosition
 
int16 _menuChoiceOfs
 
bool _isSaveAllowed
 
- Public Attributes inherited from Engine
OSystem_system
 
Audio::Mixer_mixer
 

Protected Member Functions

Common::Error run () override
 
bool hasFeature (EngineFeature f) const override
 
- Protected Member Functions inherited from Engine
virtual int runDialog (GUI::Dialog &dialog)
 
void defaultSyncSoundSettings ()
 
virtual void pauseEngineIntern (bool pause)
 

Additional Inherited Members

- Public Types inherited from Illusions::IllusionsEngine
enum  kReadSaveHeaderError { kRSHENoError = 0, kRSHEInvalidType = 1, kRSHEInvalidVersion = 2, kRSHEIoError = 3 }
 
- Public Types inherited from Engine
enum  EngineFeature {
  kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime,
  kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride
}
 
- Static Public Member Functions inherited from Illusions::IllusionsEngine
static Common::String getSavegameFilename (const Common::String &target, int num)
 
static kReadSaveHeaderError readSaveHeader (Common::SeekableReadStream *in, SaveHeader &header, bool skipThumbnail=true)
 
- Static Public Member Functions inherited from Engine
static void quitGame ()
 
static bool shouldQuit ()
 
static bool warnUserAboutUnsupportedGame (Common::String msg=Common::String())
 
static void errorUnsupportedGame (Common::String extraMsg)
 
- Protected Attributes inherited from Engine
Common::TimerManager_timer
 
Common::EventManager_eventMan
 
Common::SaveFileManager_saveFileMan
 
GUI::Dialog_mainMenuDialog
 
const Common::String _targetName
 
int32 _activeEnhancements = kEnhGameBreakingBugFixes
 

Member Function Documentation

◆ run()

Common::Error Illusions::IllusionsEngine_BBDOU::run ( )
overrideprotectedvirtual

Initialize the engine and start its main loop.

Returns
kNoError on success, otherwise an error code.

Implements Engine.

◆ hasFeature()

bool Illusions::IllusionsEngine_BBDOU::hasFeature ( EngineFeature  f) const
overrideprotectedvirtual

Determine whether the engine supports the specified feature.

Reimplemented from Engine.


The documentation for this class was generated from the following file: