ScummVM API documentation
Saga2::Saga2Engine Class Reference
Inheritance diagram for Saga2::Saga2Engine:
Engine

Public Member Functions

 Saga2Engine (OSystem *syst, const SAGA2GameDescription *desc)
 
Common::Error run () override
 
bool hasFeature (EngineFeature f) const override
 
const ADGameFileDescriptiongetFilesDescriptions () const
 
int getGameId () const
 
bool canLoadGameStateCurrently (Common::U32String *msg=nullptr) override
 
bool canSaveGameStateCurrently (Common::U32String *msg=nullptr) override
 
Common::Error loadGameStream (Common::SeekableReadStream *stream) override
 
Common::Error saveGameStream (Common::WriteStream *stream, bool isAutosave=false) override
 
Common::Error saveGameState (int slot, const Common::String &desc, bool isAutosave) override
 
Common::Error loadGameState (int slot) override
 
void syncSoundSettings () override
 
Common::String getSavegameFile (int num)
 
void syncGameStream (Common::Serializer &s)
 
void loadExeResources ()
 
void freeExeResources ()
 
void startVideo (const char *fileName, int x, int y)
 
bool checkVideo ()
 
void endVideo ()
 
void abortVideo ()
 
void readConfig ()
 
void saveConfig ()
 
- 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 ()
 
virtual void applyGameSettings ()
 
virtual void flipMute ()
 
virtual Common::String getSaveStateName (int slot) const
 
void setGameToLoadSlot (int slot)
 
bool saveGameDialog ()
 
bool loadGameDialog ()
 

Public Attributes

Common::RandomSource_rnd
 
Console_console
 
Renderer_renderer
 
AudioInterface_audio
 
PaletteManager_pal
 
ActorManager_act
 
CalendarTime_calendar
 
TileModeManager_tmm
 
ContainerManager_cnm
 
WeaponStuff _weaponRack [kMaxWeapons]
 
weaponID _loadedWeapons
 
Common::Array< char * > _nameList
 
Common::Array< PlayerActor * > _playerList
 
Common::Array< ProtoObj * > _objectProtos
 
Common::Array< ActorProto * > _actorProtos
 
Common::Array< CMapFeature * > _mapFeatures
 
Common::List< TimerList * > _timerLists
 
Common::List< Timer * > _timers
 
Common::List< ActorAppearance * > _appearanceLRU
 
Common::List< PathRequest * > _pathQueue
 
Common::List< SensorList * > _sensorListList
 
Common::List< Sensor * > _sensorList
 
Common::List< CMassWeightIndicator * > _indList
 
Common::List< int > _platformLRU
 
BandList_bandList
 
MotionTaskList_mTaskList
 
CImageCache_imageCache
 
GrabInfo_mouseInfo
 
EffectDisplayPrototypeList_edpList
 
SpellDisplayPrototypeList_sdpList
 
DisplayNodeList_mainDisplayList
 
SpellDisplayList_activeSpells
 
gMousePointer_pointer
 
ActiveRegion_activeRegionList
 
gToolBase_toolBase
 
Properties_properties
 
HandleArray_tileImageBanks
 
TileActivityTaskList_aTaskList
 
TaskStackList * _stackList
 
TaskList * _taskList
 
Deejay_grandMasterFTA
 
frameSmoother_frate
 
frameCounter_lrate
 
gDisplayPort _mainPort
 
gPort _backPort
 
gPixelMap _tileDrawMap
 
bool _gameRunning
 
bool _autoAggression
 
bool _autoWeapon
 
bool _showNight
 
bool _speechText
 
bool _speechVoice
 
bool _teleportOnClick
 
bool _teleportOnMap
 
bool _showPosition
 
bool _showStats
 
bool _showStatusMsg
 
bool _indivControlsFlag
 
bool _userControlsSetup
 
int _fadeDepth
 
int _currentMapNum
 
- Public Attributes inherited from Engine
OSystem_system
 
Audio::Mixer_mixer
 

Additional Inherited Members

- Public Types inherited from Engine
enum  EngineFeature {
  kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime,
  kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride
}
 
- Static Public Member Functions inherited from Engine
static void quitGame ()
 
static bool shouldQuit ()
 
static MetaEngineDetectiongetMetaEngineDetection ()
 
static bool warnUserAboutUnsupportedGame (Common::String msg=Common::String())
 
static void errorUnsupportedGame (Common::String extraMsg)
 
- Protected Member Functions inherited from Engine
virtual int runDialog (GUI::Dialog &dialog)
 
void defaultSyncSoundSettings ()
 
virtual void pauseEngineIntern (bool pause)
 
- Protected Attributes inherited from Engine
Common::TimerManager_timer
 
Common::EventManager_eventMan
 
Common::SaveFileManager_saveFileMan
 
GUI::Dialog_mainMenuDialog
 
const Common::String _targetName
 

Member Function Documentation

◆ run()

Common::Error Saga2::Saga2Engine::run ( )
overridevirtual

Initialize the engine and start its main loop.

Returns
kNoError on success, otherwise an error code.

Implements Engine.

◆ hasFeature()

bool Saga2::Saga2Engine::hasFeature ( EngineFeature  f) const
overridevirtual

Determine whether the engine supports the specified feature.

Reimplemented from Engine.

◆ canLoadGameStateCurrently()

bool Saga2::Saga2Engine::canLoadGameStateCurrently ( Common::U32String msg = nullptr)
inlineoverridevirtual

Indicate whether a game state can be loaded.

Parameters
msgOptional pointer to message explaining why it is disabled

Reimplemented from Engine.

◆ canSaveGameStateCurrently()

bool Saga2::Saga2Engine::canSaveGameStateCurrently ( Common::U32String msg = nullptr)
inlineoverridevirtual

Indicate whether a game state can be saved.

Parameters
msgOptional pointer to message explaining why it is disabled

Reimplemented from Engine.

◆ loadGameStream()

Common::Error Saga2::Saga2Engine::loadGameStream ( Common::SeekableReadStream stream)
overridevirtual

Load a game state.

Parameters
streamThe stream to load the save state from.
Returns
kNoError on success, otherwise an error code.

Reimplemented from Engine.

◆ saveGameStream()

Common::Error Saga2::Saga2Engine::saveGameStream ( Common::WriteStream stream,
bool  isAutosave = false 
)
overridevirtual

Save a game state.

Parameters
streamThe write stream to save the savegame data to.
isAutosaveExpected to be true if an autosave is being created.
Returns
kNoError on success, otherwise an error code.

Reimplemented from Engine.

◆ saveGameState()

Common::Error Saga2::Saga2Engine::saveGameState ( int  slot,
const Common::String desc,
bool  isAutosave 
)
overridevirtual

Save a game state.

Parameters
slotThe slot into which the save state should be stored.
descDescription for the save state, entered by the user.
isAutosaveExpected to be true if an autosave is being created.
Returns
kNoError on success, otherwise an error code.

Reimplemented from Engine.

◆ loadGameState()

Common::Error Saga2::Saga2Engine::loadGameState ( int  slot)
overridevirtual

Load a game state.

Parameters
slotThe slot from which a save state should be loaded.
Returns
kNoError on success, otherwise an error code.

Reimplemented from Engine.

◆ syncSoundSettings()

void Saga2::Saga2Engine::syncSoundSettings ( )
overridevirtual

Notify the engine that the sound settings in the config manager might have changed and that it should adjust any internal volume (and other) values accordingly.

The default implementation sets the volume levels of all mixer sound types according to the config entries of the active domain. When overwriting, call the default implementation first, then adjust the volumes further (if required).

Note
When setting volume levels, respect the "mute" config entry.
The volume for the plain sound type is reset to the maximum volume. If the engine can associate its own value for this type, it needs to overwrite this member and set it accordingly.

Reimplemented from Engine.


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