aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/fullpipe/detection.cpp')
-rw-r--r--engines/fullpipe/detection.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/engines/fullpipe/detection.cpp b/engines/fullpipe/detection.cpp
index ccd55935e6..16895b539f 100644
--- a/engines/fullpipe/detection.cpp
+++ b/engines/fullpipe/detection.cpp
@@ -32,7 +32,7 @@
namespace Fullpipe {
const char *FullpipeEngine::getGameId() const {
- return _gameDescription->gameid;
+ return _gameDescription->gameId;
}
}
@@ -76,7 +76,7 @@ static const ADGameDescription gameDescriptions[] = {
class FullpipeMetaEngine : public AdvancedMetaEngine {
public:
FullpipeMetaEngine() : AdvancedMetaEngine(Fullpipe::gameDescriptions, sizeof(ADGameDescription), fullpipeGames) {
- _singleid = "fullpipe";
+ _singleId = "fullpipe";
}
virtual const char *getName() const {
@@ -88,7 +88,7 @@ public:
}
virtual bool hasFeature(MetaEngineFeature f) const;
- virtual int getMaximumSaveSlot() const { return 8; }
+ virtual int getMaximumSaveSlot() const { return 99; }
virtual SaveStateList listSaves(const char *target) const;
virtual void removeSaveState(const char *target, int slot) const;
virtual SaveStateDescriptor querySaveMetaInfos(const char *target, int slot) const;
@@ -102,7 +102,15 @@ bool FullpipeMetaEngine::hasFeature(MetaEngineFeature f) const {
(f == kSavesSupportMetaInfo) ||
(f == kSavesSupportThumbnail) ||
(f == kSavesSupportCreationDate) ||
- (f == kSupportsLoadingDuringStartup);
+ (f == kSupportsLoadingDuringStartup) ||
+ (f == kSimpleSavesNames);
+}
+
+bool Fullpipe::FullpipeEngine::hasFeature(EngineFeature f) const {
+ return
+ (f == kSupportsRTL) ||
+ (f == kSupportsLoadingDuringRuntime) ||
+ (f == kSupportsSavingDuringRuntime);
}
SaveStateList FullpipeMetaEngine::listSaves(const char *target) const {
@@ -111,7 +119,6 @@ SaveStateList FullpipeMetaEngine::listSaves(const char *target) const {
Common::String pattern("fullpipe.s##");
filenames = saveFileMan->listSavefiles(pattern);
- sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
SaveStateList saveList;
for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
@@ -130,6 +137,8 @@ SaveStateList FullpipeMetaEngine::listSaves(const char *target) const {
}
}
+ // Sort saves based on slot number.
+ Common::sort(saveList.begin(), saveList.end(), SaveStateDescriptorSlotComparator());
return saveList;
}