diff options
Diffstat (limited to 'engines/sword1/detection.cpp')
-rw-r--r-- | engines/sword1/detection.cpp | 60 |
1 files changed, 28 insertions, 32 deletions
diff --git a/engines/sword1/detection.cpp b/engines/sword1/detection.cpp index 8ffd96d308..0c1e74082f 100644 --- a/engines/sword1/detection.cpp +++ b/engines/sword1/detection.cpp @@ -33,18 +33,18 @@ #include "engines/metaengine.h" /* Broken Sword */ -static const PlainGameDescriptorGUIOpts sword1FullSettings = - {"sword1", "Broken Sword: The Shadow of the Templars", Common::GUIO_NOMIDI}; -static const PlainGameDescriptorGUIOpts sword1DemoSettings = - {"sword1demo", "Broken Sword: The Shadow of the Templars (Demo)", Common::GUIO_NOMIDI}; -static const PlainGameDescriptorGUIOpts sword1MacFullSettings = - {"sword1mac", "Broken Sword: The Shadow of the Templars (Mac)", Common::GUIO_NOMIDI}; -static const PlainGameDescriptorGUIOpts sword1MacDemoSettings = - {"sword1macdemo", "Broken Sword: The Shadow of the Templars (Mac demo)", Common::GUIO_NOMIDI}; -static const PlainGameDescriptorGUIOpts sword1PSXSettings = - {"sword1psx", "Broken Sword: The Shadow of the Templars (PlayStation)", Common::GUIO_NOMIDI}; -static const PlainGameDescriptorGUIOpts sword1PSXDemoSettings = - {"sword1psxdemo", "Broken Sword: The Shadow of the Templars (PlayStation demo)", Common::GUIO_NOMIDI}; +static const PlainGameDescriptor sword1FullSettings = + {"sword1", "Broken Sword: The Shadow of the Templars"}; +static const PlainGameDescriptor sword1DemoSettings = + {"sword1demo", "Broken Sword: The Shadow of the Templars (Demo)"}; +static const PlainGameDescriptor sword1MacFullSettings = + {"sword1mac", "Broken Sword: The Shadow of the Templars (Mac)"}; +static const PlainGameDescriptor sword1MacDemoSettings = + {"sword1macdemo", "Broken Sword: The Shadow of the Templars (Mac demo)"}; +static const PlainGameDescriptor sword1PSXSettings = + {"sword1psx", "Broken Sword: The Shadow of the Templars (PlayStation)"}; +static const PlainGameDescriptor sword1PSXDemoSettings = + {"sword1psxdemo", "Broken Sword: The Shadow of the Templars (PlayStation demo)"}; // check these subdirectories (if present) @@ -117,12 +117,12 @@ bool Sword1::SwordEngine::hasFeature(EngineFeature f) const { GameList SwordMetaEngine::getSupportedGames() const { GameList games; - games.push_back(sword1FullSettings); - games.push_back(sword1DemoSettings); - games.push_back(sword1MacFullSettings); - games.push_back(sword1MacDemoSettings); - games.push_back(sword1PSXSettings); - games.push_back(sword1PSXDemoSettings); + games.push_back(GameDescriptor(sword1FullSettings, Common::GUIO_NOMIDI)); + games.push_back(GameDescriptor(sword1DemoSettings, Common::GUIO_NOMIDI)); + games.push_back(GameDescriptor(sword1MacFullSettings, Common::GUIO_NOMIDI)); + games.push_back(GameDescriptor(sword1MacDemoSettings, Common::GUIO_NOMIDI)); + games.push_back(GameDescriptor(sword1PSXSettings, Common::GUIO_NOMIDI)); + games.push_back(GameDescriptor(sword1PSXDemoSettings, Common::GUIO_NOMIDI)); return games; } @@ -198,17 +198,17 @@ GameList SwordMetaEngine::detectGames(const Common::FSList &fslist) const { psxDemoFilesFound = false; if (mainFilesFound && pcFilesFound && demoFilesFound) - detectedGames.push_back(sword1DemoSettings); + detectedGames.push_back(GameDescriptor(sword1DemoSettings, Common::GUIO_NOMIDI)); else if (mainFilesFound && pcFilesFound && psxFilesFound) - detectedGames.push_back(sword1PSXSettings); + detectedGames.push_back(GameDescriptor(sword1PSXSettings, Common::GUIO_NOMIDI)); else if (mainFilesFound && pcFilesFound && psxDemoFilesFound) - detectedGames.push_back(sword1PSXDemoSettings); + detectedGames.push_back(GameDescriptor(sword1PSXDemoSettings, Common::GUIO_NOMIDI)); else if (mainFilesFound && pcFilesFound && !psxFilesFound) - detectedGames.push_back(sword1FullSettings); + detectedGames.push_back(GameDescriptor(sword1FullSettings, Common::GUIO_NOMIDI)); else if (mainFilesFound && macFilesFound) - detectedGames.push_back(sword1MacFullSettings); + detectedGames.push_back(GameDescriptor(sword1MacFullSettings, Common::GUIO_NOMIDI)); else if (mainFilesFound && macDemoFilesFound) - detectedGames.push_back(sword1MacDemoSettings); + detectedGames.push_back(GameDescriptor(sword1MacDemoSettings, Common::GUIO_NOMIDI)); return detectedGames; } @@ -249,15 +249,11 @@ SaveStateList SwordMetaEngine::listSaves(const char *target) const { int SwordMetaEngine::getMaximumSaveSlot() const { return 999; } void SwordMetaEngine::removeSaveState(const char *target, int slot) const { - char fileName[12]; - snprintf(fileName, 12, "sword1.%03d", slot); - - g_system->getSavefileManager()->removeSavefile(fileName); + g_system->getSavefileManager()->removeSavefile(Common::String::format("sword1.%03d", slot)); } SaveStateDescriptor SwordMetaEngine::querySaveMetaInfos(const char *target, int slot) const { - char fileName[12]; - snprintf(fileName, 12, "sword1.%03d", slot); + Common::String fileName = Common::String::format("sword1.%03d", slot); char name[40]; uint32 playTime = 0; byte versionSave; @@ -340,8 +336,8 @@ bool SwordEngine::canLoadGameStateCurrently() { return (mouseIsActive() && !_control->isPanelShown()); // Disable GMM loading when game panel is shown } -Common::Error SwordEngine::saveGameState(int slot, const char *desc) { - _control->setSaveDescription(slot, desc); +Common::Error SwordEngine::saveGameState(int slot, const Common::String &desc) { + _control->setSaveDescription(slot, desc.c_str()); _control->saveGameToFile(slot); return Common::kNoError; // TODO: return success/failure } |