aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/detection.cpp')
-rw-r--r--engines/sherlock/detection.cpp53
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);