ScummVM API documentation
Myst3::Myst3Engine Class Reference
Inheritance diagram for Myst3::Myst3Engine:
Engine

Public Member Functions

 Myst3Engine (OSystem *syst, const Myst3GameDescription *version)
 
bool hasFeature (EngineFeature f) const override
 
Common::Platform getPlatform () const
 
Common::Language getGameLanguage () const
 
uint32 getGameLocalizationType () const
 
uint32 getGameLayoutType () const
 
bool isTextLanguageEnglish () const
 
bool isWideScreenModEnabled () const
 
bool canSaveGameStateCurrently (Common::U32String *msg=nullptr) override
 
bool canLoadGameStateCurrently (Common::U32String *msg=nullptr) override
 
Common::Error loadGameState (int slot) override
 
Common::Error loadGameState (Common::String fileName, TransitionType transition)
 
Common::Error saveGameState (int slot, const Common::String &desc, bool isAutosave=false) override
 
Common::Error saveGameState (const Common::String &desc, const Graphics::Surface *thumbnail, bool isAutosave)
 
ResourceDescription getFileDescription (const Common::String &room, uint32 index, uint16 face, Archive::ResourceType type)
 
ResourceDescriptionArray listFilesMatching (const Common::String &room, uint32 index, uint16 face, Archive::ResourceType type)
 
Graphics::SurfaceloadTexture (uint16 id)
 
void goToNode (uint16 nodeID, TransitionType transition)
 
void loadNode (uint16 nodeID, uint32 roomID=0, uint32 ageID=0)
 
void unloadNode ()
 
void loadNodeCubeFaces (uint16 nodeID)
 
void loadNodeFrame (uint16 nodeID)
 
void loadNodeMenu (uint16 nodeID)
 
void setupTransition ()
 
void drawTransition (TransitionType transitionType)
 
void dragItem (uint16 statusVar, uint16 movie, uint16 frame, uint16 hoverFrame, uint16 itemVar)
 
void dragSymbol (uint16 var, uint16 id)
 
int16 openDialog (uint16 id)
 
void runNodeInitScripts ()
 
void runNodeBackgroundScripts ()
 
void runScriptsFromNode (uint16 nodeID, uint32 roomID=0, uint32 ageID=0)
 
void runBackgroundSoundScriptsFromNode (uint16 nodeID, uint32 roomID=0, uint32 ageID=0)
 
void runAmbientScripts (uint32 node)
 
void loadMovie (uint16 id, uint16 condition, bool resetCond, bool loop)
 
void playMovieGoToNode (uint16 movie, uint16 node)
 
void playMovieFullFrame (uint16 movie)
 
void playSimpleMovie (uint16 id, bool fullframe=false, bool refreshAmbientSounds=false)
 
void removeMovie (uint16 id)
 
void setMovieLooping (uint16 id, bool loop)
 
void addSpotItem (uint16 id, int16 condition, bool fade)
 
SpotItemFaceaddMenuSpotItem (uint16 id, int16 condition, const Common::Rect &rect)
 
void loadNodeSubtitles (uint32 id)
 
void addSunSpot (uint16 pitch, uint16 heading, uint16 intensity, uint16 color, uint16 var, bool varControlledIntensity, uint16 radius)
 
SunSpot computeSunspotsIntensity (float pitch, float heading)
 
void setMenuAction (uint16 action)
 
void animateDirectionChange (float pitch, float heading, uint16 scriptTicks)
 
void getMovieLookAt (uint16 id, bool start, float &pitch, float &heading)
 
void drawFrame (bool noSwap=false)
 
void processInput (bool interactive)
 
void processEventForKeyboardState (const Common::Event &event)
 
void processEventForGamepad (const Common::Event &event)
 
void updateInputState ()
 
bool inputValidatePressed ()
 
bool inputEscapePressed ()
 
bool inputSpacePressed ()
 
bool inputTilePressed ()
 
void settingsInitDefaults ()
 
void settingsLoadToVars ()
 
void settingsApplyFromVars ()
 
- 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 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 ()
 

Static Public Member Functions

static Graphics::SurfacedecodeJpeg (const ResourceDescription *jpegDesc)
 
- 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)
 

Public Attributes

GameState_state
 
Scene_scene
 
Cursor_cursor
 
Inventory_inventory
 
Renderer_gfx
 
Menu_menu
 
Database_db
 
Sound_sound
 
Ambient_ambient
 
Common::RandomSource_rnd
 
Graphics::Surface_projectorBackground
 
- Public Attributes inherited from Engine
OSystem_system
 
Audio::Mixer_mixer
 

Protected Member Functions

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

Additional Inherited Members

- Public Types inherited from Engine
enum  EngineFeature {
  kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime,
  kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride
}
 
- 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 Myst3::Myst3Engine::run ( )
overrideprotectedvirtual

Initialize the engine and start its main loop.

Returns
kNoError on success, otherwise an error code.

Implements Engine.

◆ syncSoundSettings()

void Myst3::Myst3Engine::syncSoundSettings ( )
overrideprotectedvirtual

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.

◆ pauseEngineIntern()

void Myst3::Myst3Engine::pauseEngineIntern ( bool  pause)
overrideprotectedvirtual

Actual implementation of pauseEngine by subclasses.

See also
Engine::pauseEngine

Reimplemented from Engine.

◆ hasFeature()

bool Myst3::Myst3Engine::hasFeature ( EngineFeature  f) const
overridevirtual

Determine whether the engine supports the specified feature.

Reimplemented from Engine.

◆ canSaveGameStateCurrently()

bool Myst3::Myst3Engine::canSaveGameStateCurrently ( Common::U32String msg = nullptr)
overridevirtual

Indicate whether a game state can be saved.

Parameters
msgOptional pointer to message explaining why it is disabled

Reimplemented from Engine.

◆ canLoadGameStateCurrently()

bool Myst3::Myst3Engine::canLoadGameStateCurrently ( Common::U32String msg = nullptr)
overridevirtual

Indicate whether a game state can be loaded.

Parameters
msgOptional pointer to message explaining why it is disabled

Reimplemented from Engine.

◆ loadGameState()

Common::Error Myst3::Myst3Engine::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.

◆ saveGameState()

Common::Error Myst3::Myst3Engine::saveGameState ( int  slot,
const Common::String desc,
bool  isAutosave = false 
)
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.


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