[Scummvm-git-logs] scummvm master -> 7e5e8b8f5f039e3fa29b6f908461674e60e99776
sev-
noreply at scummvm.org
Sat Oct 22 16:40:12 UTC 2022
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
717ef66a3d SWORD2: Switch to AdvancedMetaEngineDetection
4543c66d63 SWORD2: Add multiple game variants to the detection table
7e5e8b8f5f SWORD2: Fix indentation in new detection table
Commit: 717ef66a3d60d0c8b2237bddcbc882d446489fe0
https://github.com/scummvm/scummvm/commit/717ef66a3d60d0c8b2237bddcbc882d446489fe0
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2022-10-22T18:40:07+02:00
Commit Message:
SWORD2: Switch to AdvancedMetaEngineDetection
Changed paths:
A engines/sword2/detection_tables.h
A engines/sword2/obsolete.h
R engines/sword2/detection_internal.h
engines/sword2/detection.cpp
engines/sword2/detection.h
engines/sword2/metaengine.cpp
engines/sword2/sword2.cpp
engines/sword2/sword2.h
diff --git a/engines/sword2/detection.cpp b/engines/sword2/detection.cpp
index a920f787d49..8d84999f7cd 100644
--- a/engines/sword2/detection.cpp
+++ b/engines/sword2/detection.cpp
@@ -23,22 +23,55 @@
#include "common/translation.h"
-#include "engines/metaengine.h"
+#include "engines/advancedDetector.h"
+#include "engines/obsolete.h"
#include "sword2/detection.h"
-#include "sword2/detection_internal.h"
+#include "sword2/obsolete.h" // Obsolete ID table.
-static const ExtraGuiOption sword2ExtraGuiOption = {
- _s("Show object labels"),
- _s("Show labels for objects on mouse hover"),
- "object_labels",
- false,
- 0,
- 0
+static const PlainGameDescriptor sword2Games[] = {
+ {"sword2", "Broken Sword II: The Smoking Mirror"},
+ {nullptr, nullptr}
};
-class Sword2MetaEngineDetection : public MetaEngineDetection {
+#include "sword2/detection_tables.h"
+
+static const char *const directoryGlobs[] = {
+ "clusters",
+ nullptr
+};
+
+namespace Sword2 {
+
+static const ADExtraGuiOptionsMap optionsList[] = {
+ {
+ GAMEOPTION_OBJECT_LABELS,
+ {
+ _s("Show object labels"),
+ _s("Show labels for objects on mouse hover"),
+ "object_labels",
+ false,
+ 0,
+ 0
+ }
+ },
+ AD_EXTRA_GUI_OPTIONS_TERMINATOR
+};
+
+} // End of namespace Sword2
+
+class Sword2MetaEngineDetection : public AdvancedMetaEngineDetection {
public:
+ Sword2MetaEngineDetection() : AdvancedMetaEngineDetection(Sword2::gameDescriptions, sizeof(Sword2::Sword2GameDescription), sword2Games, Sword2::optionsList) {
+ _guiOptions = GUIO3(GUIO_NOMIDI, GUIO_NOASPECT, GAMEOPTION_OBJECT_LABELS);
+ _maxScanDepth = 2;
+ _directoryGlobs = directoryGlobs;
+ }
+
+ PlainGameDescriptor findGame(const char *gameId) const override {
+ return Engines::findGameID(gameId, _gameIds, obsoleteGameIDsTable);
+ }
+
const char *getName() const override {
return "sword2";
}
@@ -46,60 +79,10 @@ public:
const char *getEngineName() const override {
return "Broken Sword II: The Smoking Mirror";
}
+
const char *getOriginalCopyright() const override {
return "Broken Sword II: The Smoking Mirror (C) Revolution";
}
-
- PlainGameList getSupportedGames() const override;
- const ExtraGuiOptions getExtraGuiOptions(const Common::String &target) const override;
- PlainGameDescriptor findGame(const char *gameid) const override;
- DetectedGames detectGames(const Common::FSList &fslist, uint32 /*skipADFlags*/, bool /*skipIncomplete*/) override;
};
-PlainGameList Sword2MetaEngineDetection::getSupportedGames() const {
- const Sword2::GameSettings *g = Sword2::sword2_settings;
- PlainGameList games;
- while (g->gameid) {
- games.push_back(PlainGameDescriptor::of(g->gameid, g->description));
- g++;
- }
- return games;
-}
-
-const ExtraGuiOptions Sword2MetaEngineDetection::getExtraGuiOptions(const Common::String &target) const {
- ExtraGuiOptions options;
- options.push_back(sword2ExtraGuiOption);
- return options;
-}
-
-PlainGameDescriptor Sword2MetaEngineDetection::findGame(const char *gameid) const {
- const Sword2::GameSettings *g = Sword2::sword2_settings;
- while (g->gameid) {
- if (0 == scumm_stricmp(gameid, g->gameid))
- break;
- g++;
- }
- return PlainGameDescriptor::of(g->gameid, g->description);
-}
-
-DetectedGames Sword2MetaEngineDetection::detectGames(const Common::FSList &fslist, uint32 /*skipADFlags*/, bool /*skipIncomplete*/) {
- // The required game data files can be located in the game directory, or in
- // a subdirectory called "clusters". In the latter case, we don't want to
- // detect the game in that subdirectory, as this will detect the game twice
- // when mass add is searching inside a directory. In this case, the first
- // result (the game directory) will be correct, but the second result (the
- // clusters subdirectory) will be wrong, as the optional speech, music and
- // video data files will be ignored. Note that this fix will skip the game
- // data files if the user has placed them inside a "clusters" subdirectory,
- // or if he/she points ScummVM directly to the "clusters" directory of the
- // game CD. Fixes bug #5273.
- if (!fslist.empty()) {
- Common::String directory = fslist[0].getParent().getName();
- if (directory.hasPrefixIgnoreCase("clusters") && directory.size() <= 9)
- return DetectedGames();
- }
-
- return detectGamesImpl(fslist);
-}
-
REGISTER_PLUGIN_STATIC(SWORD2_DETECTION, PLUGIN_TYPE_ENGINE_DETECTION, Sword2MetaEngineDetection);
diff --git a/engines/sword2/detection.h b/engines/sword2/detection.h
index 1b273d3ba9e..0cce1bf219d 100644
--- a/engines/sword2/detection.h
+++ b/engines/sword2/detection.h
@@ -24,6 +24,8 @@
#ifndef SWORD2_DETECTION_H
#define SWORD2_DETECTION_H
+#include "engines/advancedDetector.h"
+
namespace Sword2 {
enum {
@@ -31,6 +33,12 @@ enum {
GF_SPANISHDEMO = 1 << 1
};
+struct Sword2GameDescription {
+ ADGameDescription desc;
+
+ uint32 features;
+};
+
} // End of namespace Sword2
#endif // SWORD2_DETECTION_H
diff --git a/engines/sword2/detection_internal.h b/engines/sword2/detection_internal.h
deleted file mode 100644
index eec8b350acf..00000000000
--- a/engines/sword2/detection_internal.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * Additional copyright for this file:
- * Copyright (C) 1994-1998 Revolution Software Ltd.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef SWORD2_DETECTION_INTERNAL_H
-#define SWORD2_DETECTION_INTERNAL_H
-
-#include "engines/metaengine.h"
-#include "common/gui_options.h"
-#include "sword2/detection.h"
-
-/**
- * The contents of this file are helpful in detecting games,
- * as well as helping to create an instance of the game.
- */
-namespace Sword2 {
-
-struct GameSettings {
- const char *gameid;
- const char *description;
- uint32 features;
- const char *detectname;
- Common::Platform platform;
-};
-
-static const GameSettings sword2_settings[] = {
- /* Broken Sword II */
- {"sword2", "Broken Sword II: The Smoking Mirror", 0, "players.clu", Common::kPlatformWindows },
- {"sword2alt", "Broken Sword II: The Smoking Mirror (alt)", 0, "r2ctlns.ocx", Common::kPlatformWindows },
- {"sword2psx", "Broken Sword II: The Smoking Mirror (PlayStation)", 0, "screens.clu", Common::kPlatformPSX },
- {"sword2psxdemo", "Broken Sword II: The Smoking Mirror (PlayStation/Demo)", Sword2::GF_DEMO, "screens.clu", Common::kPlatformPSX },
- {"sword2demo", "Broken Sword II: The Smoking Mirror (Demo)", Sword2::GF_DEMO, "players.clu", Common::kPlatformWindows },
- {"sword2demo-es", "Broken Sword II: The Smoking Mirror (Spanish/Demo)", Sword2::GF_DEMO | Sword2::GF_SPANISHDEMO, "vielogo.tga", Common::kPlatformWindows },
- {NULL, NULL, 0, NULL, Common::kPlatformUnknown }
-};
-
-} // End of namespace Sword2
-
-static bool isFullGame(const Common::FSList &fslist) {
- Common::FSList::const_iterator file;
-
- // We distinguish between the two versions by the presence of paris.clu
- for (file = fslist.begin(); file != fslist.end(); ++file) {
- if (!file->isDirectory()) {
- if (file->getName().equalsIgnoreCase("paris.clu"))
- return true;
- }
- }
-
- return false;
-}
-
-static DetectedGames detectGamesImpl(const Common::FSList &fslist, bool recursion = false) {
- DetectedGames detectedGames;
- const Sword2::GameSettings *g;
- Common::FSList::const_iterator file;
- bool isFullVersion = isFullGame(fslist);
-
- for (g = Sword2::sword2_settings; g->gameid; ++g) {
- // Iterate over all files in the given directory
- for (file = fslist.begin(); file != fslist.end(); ++file) {
- if (file->isDirectory()) continue;
-
- if (file->getName().equalsIgnoreCase(g->detectname)) {
- // Make sure that the sword2 demo is not mixed up with the
- // full version, since they use the same filename for detection
- if ((g->features == Sword2::GF_DEMO && isFullVersion) ||
- (g->features == 0 && !isFullVersion))
- continue;
-
- // Match found, add to list of candidates, then abort inner loop.
- DetectedGame game = DetectedGame("sword2", g->gameid, g->description,
- Common::UNK_LANG, g->platform);
- game.setGUIOptions(GUIO2(GUIO_NOMIDI, GUIO_NOASPECT));
-
- detectedGames.push_back(game);
- break;
- }
- }
- }
-
-
- if (detectedGames.empty() && !recursion) {
- // Nothing found -- try to recurse into the 'clusters' subdirectory,
- // present e.g. if the user copied the data straight from CD.
- for (file = fslist.begin(); file != fslist.end(); ++file) {
- if (file->isDirectory()) {
- if (file->getName().equalsIgnoreCase("clusters")) {
- Common::FSList recList;
- if (file->getChildren(recList, Common::FSNode::kListAll)) {
- DetectedGames recGames = detectGamesImpl(recList, true);
- if (!recGames.empty()) {
- detectedGames.push_back(recGames);
- break;
- }
- }
- }
- }
- }
- }
-
-
- return detectedGames;
-}
-
-#endif // SWORD2_DETECTION_INTERNAL_H
diff --git a/engines/sword2/detection_tables.h b/engines/sword2/detection_tables.h
new file mode 100644
index 00000000000..d30e482940e
--- /dev/null
+++ b/engines/sword2/detection_tables.h
@@ -0,0 +1,71 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * Additional copyright for this file:
+ * Copyright (C) 1994-1998 Revolution Software Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#define GAMEOPTION_OBJECT_LABELS GUIO_GAMEOPTIONS1
+
+namespace Sword2 {
+
+static const Sword2GameDescription gameDescriptions[] = {
+ {
+ {
+ "sword2",
+ "Demo",
+ AD_ENTRY1s("players.clu", "effc399b33e5f85329d7633ad4dc5e90", 10091432),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_DEMO,
+ GUIO0()
+ },
+ GF_DEMO
+ },
+
+ {
+ {
+ "sword2",
+ "Demo",
+ AD_ENTRY1s("players.clu", "5068815a62ba932afba7267bafc9786d", 9904289),
+ Common::ES_ESP,
+ Common::kPlatformWindows,
+ ADGF_DEMO,
+ GUIO0()
+ },
+ GF_DEMO | GF_SPANISHDEMO
+ },
+
+ {
+ {
+ "sword2",
+ "Demo",
+ AD_ENTRY1s("players.clu", "e8786804d399310bda3fcbf897bc44f7", 3085812),
+ Common::EN_ANY,
+ Common::kPlatformPSX,
+ ADGF_DEMO,
+ GUIO0()
+ },
+ GF_DEMO
+ },
+
+ { AD_TABLE_END_MARKER, 0 }
+};
+
+} // End of namespace Sword2
diff --git a/engines/sword2/metaengine.cpp b/engines/sword2/metaengine.cpp
index c05a426c191..e34fb6116b9 100644
--- a/engines/sword2/metaengine.cpp
+++ b/engines/sword2/metaengine.cpp
@@ -21,7 +21,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "engines/metaengine.h"
+#include "engines/advancedDetector.h"
+#include "engines/obsolete.h"
#include "common/config-manager.h"
#include "common/events.h"
@@ -33,9 +34,9 @@
#include "sword2/sword2.h"
#include "sword2/saveload.h"
-#include "sword2/detection_internal.h"
+#include "sword2/obsolete.h"
-class Sword2MetaEngine : public MetaEngine {
+class Sword2MetaEngine : public AdvancedMetaEngine {
public:
const char *getName() const override {
return "sword2";
@@ -47,7 +48,11 @@ public:
int getMaximumSaveSlot() const override;
void removeSaveState(const char *target, int slot) const override;
- Common::Error createInstance(OSystem *syst, Engine **engine) override;
+ Common::Error createInstance(OSystem *syst, Engine **engine) override {
+ Engines::upgradeTargetIfNecessary(obsoleteGameIDsTable);
+ return AdvancedMetaEngine::createInstance(syst, engine);
+ }
+ Common::Error createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const override;
};
bool Sword2MetaEngine::hasFeature(MetaEngineFeature f) const {
@@ -105,28 +110,10 @@ void Sword2MetaEngine::removeSaveState(const char *target, int slot) const {
g_system->getSavefileManager()->removeSavefile(filename);
}
-Common::Error Sword2MetaEngine::createInstance(OSystem *syst, Engine **engine) {
- assert(syst);
- assert(engine);
-
- Common::FSList fslist;
- Common::FSNode dir(ConfMan.get("path"));
- if (!dir.getChildren(fslist, Common::FSNode::kListAll)) {
- return Common::kNoGameDataFoundError;
- }
-
- // Invoke the detector
- Common::String gameid = ConfMan.get("gameid");
- DetectedGames detectedGames = detectGamesImpl(fslist);
-
- for (uint i = 0; i < detectedGames.size(); i++) {
- if (detectedGames[i].gameId == gameid) {
- *engine = new Sword2::Sword2Engine(syst);
- return Common::kNoError;
- }
- }
-
- return Common::kNoGameDataFoundError;
+Common::Error Sword2MetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
+ const Sword2::Sword2GameDescription *gd = (const Sword2::Sword2GameDescription *)desc;
+ *engine = new Sword2::Sword2Engine(syst, gd);
+ return Common::kNoError;
}
#if PLUGIN_ENABLED_DYNAMIC(SWORD2)
diff --git a/engines/sword2/obsolete.h b/engines/sword2/obsolete.h
new file mode 100644
index 00000000000..8dd9dc6a5f5
--- /dev/null
+++ b/engines/sword2/obsolete.h
@@ -0,0 +1,36 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * Additional copyright for this file:
+ * Copyright (C) 1994-1998 Revolution Software Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef SWORD2_OBSOLETE_H
+#define SWORD2_OBSOLETE_H
+
+static const Engines::ObsoleteGameID obsoleteGameIDsTable[] = {
+ {"sword2alt", "sword2", Common::kPlatformWindows},
+ {"sword2psx", "sword2", Common::kPlatformPSX},
+ {"sword2psxdemo", "sword2", Common::kPlatformPSX},
+ {"sword2demo", "sword2", Common::kPlatformWindows},
+ {"sword2demo-es", "sword2", Common::kPlatformWindows},
+ {0, 0, Common::kPlatformUnknown}
+};
+
+#endif // SWORD2_OBSOLETE_H
diff --git a/engines/sword2/sword2.cpp b/engines/sword2/sword2.cpp
index 305504adbc6..bdf0e5eb86c 100644
--- a/engines/sword2/sword2.cpp
+++ b/engines/sword2/sword2.cpp
@@ -32,6 +32,7 @@
#include "sword2/sword2.h"
#include "sword2/defs.h"
+#include "sword2/detection.h"
#include "sword2/header.h"
#include "sword2/console.h"
#include "sword2/controls.h"
@@ -48,7 +49,7 @@ namespace Sword2 {
Common::Platform Sword2Engine::_platform;
-Sword2Engine::Sword2Engine(OSystem *syst) : Engine(syst), _rnd("sword2") {
+Sword2Engine::Sword2Engine(OSystem *syst, const Sword2GameDescription *gameDesc) : Engine(syst), _rnd("sword2") {
// Add default file directories
const Common::FSNode gameDataDir(ConfMan.get("path"));
SearchMan.addSubDirectoryMatching(gameDataDir, "clusters");
@@ -57,18 +58,8 @@ Sword2Engine::Sword2Engine(OSystem *syst) : Engine(syst), _rnd("sword2") {
SearchMan.addSubDirectoryMatching(gameDataDir, "smacks");
SearchMan.addSubDirectoryMatching(gameDataDir, "streams"); // PSX video
- if (!scumm_stricmp(ConfMan.get("gameid").c_str(), "sword2demo") || !scumm_stricmp(ConfMan.get("gameid").c_str(), "sword2psxdemo"))
- _features = GF_DEMO;
- else if (!scumm_stricmp(ConfMan.get("gameid").c_str(), "sword2demo-es"))
- _features = GF_DEMO | GF_SPANISHDEMO;
- else
- _features = 0;
-
- // Check if we are running PC or PSX version.
- if (!scumm_stricmp(ConfMan.get("gameid").c_str(), "sword2psx") || !scumm_stricmp(ConfMan.get("gameid").c_str(), "sword2psxdemo"))
- Sword2Engine::_platform = Common::kPlatformPSX;
- else
- Sword2Engine::_platform = Common::kPlatformWindows;
+ _features = gameDesc->features;
+ Sword2Engine::_platform = gameDesc->desc.platform;
_bootParam = ConfMan.getInt("boot_param");
_saveSlot = ConfMan.getInt("save_slot");
diff --git a/engines/sword2/sword2.h b/engines/sword2/sword2.h
index f30bf34f08e..cbac4627f14 100644
--- a/engines/sword2/sword2.h
+++ b/engines/sword2/sword2.h
@@ -146,7 +146,7 @@ protected:
void pauseEngineIntern(bool pause) override;
public:
- Sword2Engine(OSystem *syst);
+ Sword2Engine(OSystem *syst, const Sword2GameDescription *gameDesc);
~Sword2Engine() override;
int getFramesPerSecond();
Commit: 4543c66d636c1ac970c04736c2563355cbc2ec2a
https://github.com/scummvm/scummvm/commit/4543c66d636c1ac970c04736c2563355cbc2ec2a
Author: Lothar Serra Mari (mail at serra.me)
Date: 2022-10-22T18:40:07+02:00
Commit Message:
SWORD2: Add multiple game variants to the detection table
Changed paths:
engines/sword2/detection.cpp
engines/sword2/detection_tables.h
diff --git a/engines/sword2/detection.cpp b/engines/sword2/detection.cpp
index 8d84999f7cd..0ce6e7e0a81 100644
--- a/engines/sword2/detection.cpp
+++ b/engines/sword2/detection.cpp
@@ -38,6 +38,8 @@ static const PlainGameDescriptor sword2Games[] = {
static const char *const directoryGlobs[] = {
"clusters",
+ "smacks",
+ "video",
nullptr
};
diff --git a/engines/sword2/detection_tables.h b/engines/sword2/detection_tables.h
index d30e482940e..505d9a8f053 100644
--- a/engines/sword2/detection_tables.h
+++ b/engines/sword2/detection_tables.h
@@ -30,7 +30,20 @@ static const Sword2GameDescription gameDescriptions[] = {
{
"sword2",
"Demo",
- AD_ENTRY1s("players.clu", "effc399b33e5f85329d7633ad4dc5e90", 10091432),
+ AD_ENTRY1s("general.clu", "11e824864a75195652610e8b397382a6", 8030769),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_DEMO,
+ GUIO0()
+ },
+ GF_DEMO
+ },
+
+ {
+ {
+ "sword2",
+ "PC Gamer Demo",
+ AD_ENTRY1s("general.clu", "522ecd261027f0b55315a32aaef97295", 4519015),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_DEMO,
@@ -65,6 +78,302 @@ static const Sword2GameDescription gameDescriptions[] = {
GF_DEMO
},
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "resource.tab", "ee4c0a8a2b8821ca113ea4176968b857", 16584,
+ "speech1.clu", "a403904a0e825356107d228f8f74092e", 176260048),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "1CD release",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "resource.tab", "ee4c0a8a2b8821ca113ea4176968b857", 16588),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "EU",
+ AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "9b344d976ca8d19a1cf5aa4413397f6b", 304968,
+ "speech1.clg", "d49a5f3683b734d1129cbf6a0f95ae83", 57935499),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "d0cafb4d2982613ca4cf0574a0e4e079", 418165),
+ Common::FR_FRA,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "5771f52410745029d7f71af05072d3d6", 556961),
+ Common::DE_DEU,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "56c1197e72249473538c30c912607d01", 418165),
+ Common::ES_ESP,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "c141e9903e4a1f45252dd1500498b6e2", 488745),
+ Common::IT_ITA,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "bc45e00cfb737ad61fada3ca6b1b2bfc", 279042),
+ Common::CS_CZE,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
+ "text.clu", "9867bb6dfc850bfa165812f0827a5508", 454229),
+ Common::FI_FIN,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "93ea23ccf78dc746ed9a027fcf66d58d", 248692),
+ Common::HE_ISR,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "82714fa70516486174cddc2754958cd4", 304968),
+ Common::HU_HUN,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
+ "text.clu", "f1cf2aaa7e56d8bf6572c9b25267931e", 373704),
+ Common::PL_POL,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "English speech",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "cda6306bedfa63ac4386ff82977bfcd6", 410949),
+ Common::PT_BRA,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "Fargus",
+ AD_ENTRY2s("general.clu", "98e43a4fd93227b1d5d44e664eeede0c", 7320908,
+ "text.clu", "33a2645498ef1f4e63c4f6a50da4a3e2", 288998),
+ Common::RU_RUS,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "Mediahauz/English speech",
+ AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+ "text.clu", "e85c148037b8bfc02c968d4d22fda5e1", 315178),
+ Common::RU_RUS,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "06691fc9f749f3f7ad0f622fbfe79467", 302756),
+ Common::EN_USA,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "be8ad3f1d9d3ddd8881169b16aa23970", 838392),
+ Common::EN_GRB,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "0920f1aec8bc9d02f8c94f73965c8006", 327668),
+ Common::FR_FRA,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "5ce53dfc154b80d4ca64b60df808e411", 347456),
+ Common::DE_DEU,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "03ffcd1eec48f74a3d16d1b7751cee0b", 316124),
+ Common::ES_ESP,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
+ {
+ {
+ "sword2",
+ "",
+ AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+ "text.clu", "298bd6eef464780bf6b0830805eef220", 334784),
+ Common::IT_ITA,
+ Common::kPlatformPSX,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+ 0
+ },
+
{ AD_TABLE_END_MARKER, 0 }
};
Commit: 7e5e8b8f5f039e3fa29b6f908461674e60e99776
https://github.com/scummvm/scummvm/commit/7e5e8b8f5f039e3fa29b6f908461674e60e99776
Author: Lothar Serra Mari (mail at serra.me)
Date: 2022-10-22T18:40:07+02:00
Commit Message:
SWORD2: Fix indentation in new detection table
Changed paths:
engines/sword2/detection_tables.h
diff --git a/engines/sword2/detection_tables.h b/engines/sword2/detection_tables.h
index 505d9a8f053..75b58b94197 100644
--- a/engines/sword2/detection_tables.h
+++ b/engines/sword2/detection_tables.h
@@ -84,7 +84,7 @@ static const Sword2GameDescription gameDescriptions[] = {
"",
AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
"resource.tab", "ee4c0a8a2b8821ca113ea4176968b857", 16584,
- "speech1.clu", "a403904a0e825356107d228f8f74092e", 176260048),
+ "speech1.clu", "a403904a0e825356107d228f8f74092e", 176260048),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
More information about the Scummvm-git-logs
mailing list