diff options
Diffstat (limited to 'engines/sherlock/detection.cpp')
-rw-r--r-- | engines/sherlock/detection.cpp | 53 |
1 files changed, 23 insertions, 30 deletions
diff --git a/engines/sherlock/detection.cpp b/engines/sherlock/detection.cpp index 096eb9f46e..da3ad4628f 100644 --- a/engines/sherlock/detection.cpp +++ b/engines/sherlock/detection.cpp @@ -36,16 +36,10 @@ struct SherlockGameDescription { GameType gameID; }; -/** - * Returns the Id of the game - */ GameType SherlockEngine::getGameID() const { return _gameDescription->gameID; } -/** - * Returns the platform the game's datafiles are for - */ Common::Platform SherlockEngine::getPlatform() const { return _gameDescription->desc.platform; } @@ -135,17 +129,37 @@ public: return "Sherlock Engine (C) 1992-1996 Mythos Software, 1992-1996 (C) Electronic Arts"; } + /** + * Creates an instance of the game engine + */ virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const; + + /** + * Returns a list of features the game's MetaEngine support + */ virtual bool hasFeature(MetaEngineFeature f) const; + + /** + * Return a list of savegames + */ virtual SaveStateList listSaves(const char *target) const; + + /** + * Returns the maximum number of allowed save slots + */ virtual int getMaximumSaveSlot() const; + + /** + * Deletes a savegame in the specified slot + */ virtual void removeSaveState(const char *target, int slot) const; + + /** + * Given a specified savegame slot, returns extended information for the save + */ SaveStateDescriptor querySaveMetaInfos(const char *target, int slot) const; }; -/** - * Creates an instance of the game engine - */ bool SherlockMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const { const Sherlock::SherlockGameDescription *gd = (const Sherlock::SherlockGameDescription *)desc; if (gd) { @@ -164,9 +178,6 @@ bool SherlockMetaEngine::createInstance(OSystem *syst, Engine **engine, const AD return gd != 0; } -/** - * Returns a list of features the game's MetaEngine support - */ bool SherlockMetaEngine::hasFeature(MetaEngineFeature f) const { return (f == kSupportsListSaves) || @@ -176,9 +187,6 @@ bool SherlockMetaEngine::hasFeature(MetaEngineFeature f) const { (f == kSavesSupportThumbnail); } -/** - * Returns a list of features the game itself supports - */ bool Sherlock::SherlockEngine::hasFeature(EngineFeature f) const { return (f == kSupportsRTL) || @@ -186,38 +194,23 @@ bool Sherlock::SherlockEngine::hasFeature(EngineFeature f) const { (f == kSupportsSavingDuringRuntime); } -/** - * Returns whether the version is a demo - */ bool Sherlock::SherlockEngine::isDemo() const { return _gameDescription->desc.flags & ADGF_DEMO; } -/** - * Return a list of savegames - */ SaveStateList SherlockMetaEngine::listSaves(const char *target) const { return Sherlock::SaveManager::getSavegameList(target); } -/** - * Returns the maximum number of allowed save slots - */ int SherlockMetaEngine::getMaximumSaveSlot() const { return MAX_SAVEGAME_SLOTS; } -/** - * Deletes a savegame in the specified slot - */ void SherlockMetaEngine::removeSaveState(const char *target, int slot) const { Common::String filename = Sherlock::SaveManager(nullptr, target).generateSaveName(slot); g_system->getSavefileManager()->removeSavefile(filename); } -/** - * Given a specified savegame slot, returns extended information for the save - */ SaveStateDescriptor SherlockMetaEngine::querySaveMetaInfos(const char *target, int slot) const { Common::String filename = Sherlock::SaveManager(nullptr, target).generateSaveName(slot); Common::InSaveFile *f = g_system->getSavefileManager()->openForLoading(filename); |