ENGINES: Fix savegame filename format for new-type saves
This also fixes a problem with the Griffin engine, which although it was using the new type saves, was using a target.s?? format, so wasn't listing files in the GMM save dialog
This commit is contained in:
parent
8f15f529d8
commit
05620460e0
2 changed files with 19 additions and 1 deletions
|
@ -78,10 +78,27 @@ public:
|
||||||
virtual int getAutosaveSlot() const override {
|
virtual int getAutosaveSlot() const override {
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
const char *getSavegameFile(int saveGameIdx, const char *target = nullptr) const override;
|
||||||
|
const char *getSavegamePattern(const char *target = nullptr) const override;
|
||||||
|
|
||||||
Common::KeymapArray initKeymaps(const char *target) const override;
|
Common::KeymapArray initKeymaps(const char *target) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const char *GriffonMetaEngine::getSavegameFile(int saveGameIdx, const char *target) const {
|
||||||
|
static char buffer[200];
|
||||||
|
snprintf(buffer, sizeof(buffer), "%s.s%02d", target == nullptr ? getEngineId() : target, saveGameIdx);
|
||||||
|
|
||||||
|
return buffer;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *GriffonMetaEngine::getSavegamePattern(const char *target) const {
|
||||||
|
static char buffer[200];
|
||||||
|
snprintf(buffer, sizeof(buffer), "%s.s##", target == nullptr ? getEngineId() : target);
|
||||||
|
|
||||||
|
return buffer;
|
||||||
|
}
|
||||||
|
|
||||||
bool Griffon::GriffonEngine::hasFeature(EngineFeature f) const {
|
bool Griffon::GriffonEngine::hasFeature(EngineFeature f) const {
|
||||||
return
|
return
|
||||||
(f == kSupportsReturnToLauncher) ||
|
(f == kSupportsReturnToLauncher) ||
|
||||||
|
|
|
@ -39,8 +39,9 @@
|
||||||
|
|
||||||
const char *MetaEngine::getSavegameFile(int saveGameIdx, const char *target) const {
|
const char *MetaEngine::getSavegameFile(int saveGameIdx, const char *target) const {
|
||||||
static char buffer[200];
|
static char buffer[200];
|
||||||
|
const char *pattern = hasFeature(kSavesUseExtendedFormat) ? "%s.%03d" : "%s.s%02d";
|
||||||
|
|
||||||
snprintf(buffer, sizeof(buffer), "%s.s%02d", target == nullptr ? getEngineId() : target, saveGameIdx);
|
snprintf(buffer, sizeof(buffer), pattern, target == nullptr ? getEngineId() : target, saveGameIdx);
|
||||||
|
|
||||||
return buffer;
|
return buffer;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue