aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/parallaction/detection.cpp')
-rw-r--r--engines/parallaction/detection.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/parallaction/detection.cpp b/engines/parallaction/detection.cpp
index aae17d32e1..d2444c642e 100644
--- a/engines/parallaction/detection.cpp
+++ b/engines/parallaction/detection.cpp
@@ -246,6 +246,7 @@ public:
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;
+ virtual void removeSaveState(const char *target, int slot) const;
};
bool ParallactionMetaEngine::hasFeature(MetaEngineFeature f) const {
@@ -302,6 +303,16 @@ SaveStateList ParallactionMetaEngine::listSaves(const char *target) const {
return saveList;
}
+void ParallactionMetaEngine::removeSaveState(const char *target, int slot) const {
+ char extension[6];
+ snprintf(extension, sizeof(extension), ".0%02d", slot);
+
+ Common::String filename = target;
+ filename += extension;
+
+ g_system->getSavefileManager()->removeSavefile(filename.c_str());
+}
+
#if PLUGIN_ENABLED_DYNAMIC(PARALLACTION)
REGISTER_PLUGIN_DYNAMIC(PARALLACTION, PLUGIN_TYPE_ENGINE, ParallactionMetaEngine);
#else