SWORD1: Made detection more robust and added Polish with DXA. Bug #14276

This commit is contained in:
Eugene Sandulenko 2023-03-02 00:26:16 +01:00
parent c214cbe804
commit 45b03009ef
No known key found for this signature in database
GPG Key ID: 014D387312D34F08
3 changed files with 23 additions and 3 deletions

View File

@ -36,11 +36,18 @@ static const PlainGameDescriptor swordGames[] = {
#include "sword1/detection_tables.h"
static const char *const directoryGlobs[] = {
"smackshi",
"video",
nullptr
};
class SwordMetaEngineDetection : public AdvancedMetaEngineDetection {
public:
SwordMetaEngineDetection() : AdvancedMetaEngineDetection(Sword1::gameDescriptions, sizeof(ADGameDescription), swordGames) {
_guiOptions = GUIO2(GUIO_NOMIDI, GUIO_NOASPECT);
_flags = kADFlagMatchFullPaths;
_directoryGlobs = directoryGlobs;
}
PlainGameDescriptor findGame(const char *gameId) const override {

View File

@ -333,6 +333,19 @@ static const ADGameDescription gameDescriptions[] = {
GUIO0()
},
{
"sword1",
"English speech and DXA cutscenes",
AD_ENTRY4s("clusters/scripts.clu", "72b10193714e8c6e4daca51791c0db0c", 1087240,
"clusters/swordres.rif", "88c0793a4fa908083b00f6677c545f78", 58916,
"clusters/text.clu", "7d9e47533fde5333dc310bfd73eaeb5c", 2666944,
"intro.dxa", nullptr, -1),
Common::PL_POL,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
GUIO0()
},
{
"sword1",
"English speech",
@ -365,7 +378,7 @@ static const ADGameDescription gameDescriptions[] = {
AD_ENTRY4s("clusters/scripts.clu", "72b10193714e8c6e4daca51791c0db0c", 1088372,
"clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
"clusters/text.clu", "76f93f5feecc8915435105478f3c6615", 3199652,
"smackshi/intro.dxa", nullptr, -1),
"intro.dxa", nullptr, -1),
Common::CS_CZE,
Common::kPlatformWindows,
ADGF_NO_FLAGS,

View File

@ -57,8 +57,8 @@ SwordEngine::SwordEngine(OSystem *syst, const ADGameDescription *gameDesc)
SearchMan.addSubDirectoryMatching(gameDataDir, "streams"); // PSX videos
//SearchMan.addSubDirectoryMatching(gameDataDir, "clusters"); // Comes from AD
//SearchMan.addSubDirectoryMatching(gameDataDir, "video"); // Comes from AD
//SearchMan.addSubDirectoryMatching(gameDataDir, "smackshi"); // Comes from AD
SearchMan.addSubDirectoryMatching(gameDataDir, "video"); // Comes from AD
SearchMan.addSubDirectoryMatching(gameDataDir, "smackshi"); // Comes from AD
//SearchMan.addSubDirectoryMatching(gameDataDir, "english"); // PSX Demo // Comes from AD
//SearchMan.addSubDirectoryMatching(gameDataDir, "italian"); // PSX Demo // Comes from AD