aboutsummaryrefslogtreecommitdiff
path: root/engines/sword1/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sword1/detection.cpp')
-rw-r--r--engines/sword1/detection.cpp60
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
}