diff options
-rw-r--r-- | engines/agos/detection.cpp | 8 | ||||
-rw-r--r-- | gui/launcher.cpp | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/engines/agos/detection.cpp b/engines/agos/detection.cpp index 42dce0f121..ce7be3d440 100644 --- a/engines/agos/detection.cpp +++ b/engines/agos/detection.cpp @@ -109,11 +109,17 @@ public: virtual const char *getCopyright() const { return "AGOS (C) Adventure Soft"; } - + + virtual bool hasFeature(MetaEngineFeature f) const; virtual bool createInstance(OSystem *syst, Engine **engine, const Common::ADGameDescription *desc) const; virtual SaveStateList listSaves(const char *target) const; }; +bool AgosMetaEngine::hasFeature(MetaEngineFeature f) const { + return + (f == kSupportsListSaves); +} + bool AgosMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common::ADGameDescription *desc) const { const AGOS::AGOSGameDescription *gd = (const AGOS::AGOSGameDescription *)desc; bool res = true; diff --git a/gui/launcher.cpp b/gui/launcher.cpp index 733ecc4275..6af9791810 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -955,7 +955,9 @@ void LauncherDialog::loadGame(int item) { if (plugin) { bool delSupport = (*plugin)->hasFeature(MetaEngine::kSupportsDeleteSave); - if ((*plugin)->hasFeature(MetaEngine::kSupportsListSaves)) { + if ((*plugin)->hasFeature(MetaEngine::kSupportsListSaves) && + (*plugin)->hasFeature(MetaEngine::kSupportsDirectLoad)) + { do { Common::StringList saveNames = generateSavegameList(item, plugin); _loadDialog->setList(saveNames); |