diff options
Diffstat (limited to 'engines/gob')
-rw-r--r-- | engines/gob/detection.cpp | 132 | ||||
-rw-r--r-- | engines/gob/gob.cpp | 13 | ||||
-rw-r--r-- | engines/gob/gob.h | 4 |
3 files changed, 43 insertions, 106 deletions
diff --git a/engines/gob/detection.cpp b/engines/gob/detection.cpp index 6088d622f8..9ab8de1b08 100644 --- a/engines/gob/detection.cpp +++ b/engines/gob/detection.cpp @@ -72,7 +72,7 @@ static const PlainGameDescriptor gobGames[] = { {"bambou", "Playtoons Limited Edition - Bambou le sauveur de la jungle"}, {"fascination", "Fascination"}, {"geisha", "Geisha"}, - {"magicstones", "The Land of the Magic Stones"}, + {"adi2", "ADI v2"}, {"adibou4", "Adibou v4"}, {"adibouunknown", "Adibou (not yet supported)"}, {0, 0} @@ -3689,21 +3689,31 @@ static const GOBGameDescription gameDescriptions[] = { }, { { - "magicstones", - "", - { - {"ed4.stk", 0, "98721a7cfdc5a358d7ac56b7c6d3ba3d", 541882}, - {"ed4cd.itk", 0, "0627a91d9a6f4772c33747ce752024c2", 606993908}, - {0, 0, 0, 0} - }, + "adi2", + "Adi 2.7.1", + AD_ENTRY1s("adi2.stk", "6fa5dffebf5c7243c6af6b8c188ee00a", 19278008), FR_FRA, kPlatformPC, ADGF_NO_FLAGS, - GUIO_NOSUBTITLES | GUIO_NOSPEECH + GUIO_NONE + }, + kGameTypeAdibou4, + kFeatures640, + "adi2.stk", "ediintro.tot", 0 + }, + { + { + "adi2", + "ADI 2 Spanish", + AD_ENTRY1s("adi2.stk", "2a40bb48ccbd4e6fb3f7f0fc2f069d80", 17720132), + ES_ESP, + kPlatformPC, + ADGF_NO_FLAGS, + GUIO_NONE }, - kGameTypeMagicStones, - kFeatures800x600, - "ed4.stk", "main.obc", 0 + kGameTypeAdibouUnknown, + kFeaturesNone, + "adi2.stk", "ediintro.tot", 0 }, { { @@ -3791,20 +3801,6 @@ static const GOBGameDescription gameDescriptions[] = { { { "adibouunknown", - "ADI 2 Spanish", - AD_ENTRY1s("adi2.stk", "2a40bb48ccbd4e6fb3f7f0fc2f069d80", 17720132), - ES_ESP, - kPlatformPC, - ADGF_NO_FLAGS, - GUIO_NONE - }, - kGameTypeAdibouUnknown, - kFeaturesNone, - "adi2.stk", "ediintro.tot", 0 - }, - { - { - "adibouunknown", "ADIBOU 2 French", AD_ENTRY1s("intro.stk", "94ae7004348dc8bf99c23a9a6ef81827", 956162), FR_FRA, @@ -3876,78 +3872,6 @@ static const GOBGameDescription gameDescriptions[] = { kFeaturesNone, "adibou.stk", "intro.tot", 0 }, - { - { - "adibouunknown", - "ADIBOU pr\xE9sente La Magie (STK2.1/OBC)", - { - {"adibou.stk", 0, "977d2449d398f3df23238d718fca35b5", 61097}, - {"magic.stk", 0, "9776765dead3e338a32c43bf344b5819", 302664}, - {0, 0, 0, 0} - }, - FR_FRA, - kPlatformPC, - ADGF_NO_FLAGS, - GUIO_NONE - }, - kGameTypeAdibouUnknown, - kFeaturesNone, - "adibou.stk", "main.obc", 0 - }, - { - { - "adibouunknown", - "Dis-moi Adi : Français-Maths CE2 (PAK/??\?)", - { - {"adi_exerciser.pak", 0, "585db904fe745ab560886a13500ed5f2", 73207668}, - {"adi_texts.pak", 0, "79c73034e0a098d2a45a70ba95f6eace", 10656}, - {0, 0, 0, 0} - }, - FR_FRA, - kPlatformPC, - ADGF_NO_FLAGS, - GUIO_NONE - }, - kGameTypeAdibouUnknown, - kFeaturesNone, - "", "", 0 - }, - { - { - "adibouunknown", - "Dis-moi Adi : Français-Maths CM2 (PAK/??\?)", - { - {"adi_exerciser.pak", 0, "7e4574ea8a8e77585fb17f5c8d7a7831", 65789907}, - {"adi_texts.pak", 0, "79c73034e0a098d2a45a70ba95f6eace", 10656}, - {0, 0, 0, 0} - }, - FR_FRA, - kPlatformPC, - ADGF_NO_FLAGS, - GUIO_NONE - }, - kGameTypeAdibouUnknown, - kFeaturesNone, - "", "", 0 - }, - { - { - "adibouunknown", - "Dis-moi Adi : Anglais primaire 7-11 ans (PAK/??\?)", - { - {"adi_exerciser.pak", 0, "a2d7dec00cd5a6e2f2b8bfc225df490e", 136669275}, - {"adi_texts.pak", 0, "eb09da3d13770c34bf77e4f94744d5f5", 10616}, - {0, 0, 0, 0} - }, - FR_FRA, - kPlatformPC, - ADGF_NO_FLAGS, - GUIO_NONE - }, - kGameTypeAdibouUnknown, - kFeaturesNone, - "", "", 0 - }, { AD_TABLE_END_MARKER, kGameTypeNone, kFeaturesNone, 0, 0, 0} }; @@ -4262,17 +4186,17 @@ static const GOBGameDescription fallbackDescs[] = { }, { { - "magicstones", - "unknown", + "adi2", + "", AD_ENTRY1(0, 0), UNK_LANG, kPlatformPC, ADGF_NO_FLAGS, GUIO_NOSUBTITLES | GUIO_NOSPEECH }, - kGameTypeMagicStones, - kFeatures800x600, - "ed4.stk", "main.obc", 0 + kGameTypeAdi2, + kFeatures640, + "adi2.stk", 0, 0 }, { { @@ -4328,7 +4252,7 @@ static const ADFileBasedFallback fileBased[] = { { &fallbackDescs[19], { "intro.stk", "bambou.itk", 0 } }, { &fallbackDescs[20], { "disk0.stk", "disk1.stk", "disk2.stk", "disk3.stk", 0 } }, { &fallbackDescs[21], { "disk1.stk", "disk2.stk", "disk3.stk", 0 } }, - { &fallbackDescs[22], { "ed4.stk", 0 } }, + { &fallbackDescs[22], { "adi2.stk", 0 } }, { &fallbackDescs[23], { "adif41.stk", "adim41.stk", 0 } }, { &fallbackDescs[24], { "coktelplayer.scn", 0 } }, { 0, { 0 } } diff --git a/engines/gob/gob.cpp b/engines/gob/gob.cpp index a348fbdb08..d9a4dc90c8 100644 --- a/engines/gob/gob.cpp +++ b/engines/gob/gob.cpp @@ -367,6 +367,7 @@ bool GobEngine::initGameParts() { _goblin = new Goblin_v2(this); _scenery = new Scenery_v2(this); _saveLoad = new SaveLoad_v2(this, _targetName.c_str()); +// _saveLoad = new SaveLoad_Fascination(this, _targetName.c_str()); break; case kGameTypeWeen: @@ -470,6 +471,18 @@ bool GobEngine::initGameParts() { _saveLoad = new SaveLoad_Playtoons(this, _targetName.c_str()); break; + case kGameTypeAdi2: + _init = new Init_v2(this); + _video = new Video_v6(this); + _inter = new Inter_Playtoons(this); + _mult = new Mult_v2(this); + _draw = new Draw_v2(this); + _map = new Map_v2(this); + _goblin = new Goblin_v4(this); + _scenery = new Scenery_v2(this); + _saveLoad = new SaveLoad_Playtoons(this, _targetName.c_str()); + break; + default: deinitGameParts(); return false; diff --git a/engines/gob/gob.h b/engines/gob/gob.h index 84ff707877..72f0cca79a 100644 --- a/engines/gob/gob.h +++ b/engines/gob/gob.h @@ -106,7 +106,7 @@ enum GameType { kGameTypeBambou, kGameTypeFascination, kGameTypeGeisha, - kGameTypeMagicStones, + kGameTypeAdi2, kGameTypeAdibou4, kGameTypeAdibouUnknown }; @@ -119,7 +119,7 @@ enum Features { kFeatures640 = 1 << 3, kFeaturesSCNDemo = 1 << 4, kFeaturesBATDemo = 1 << 5, - kFeatures800x600 = 1 << 6 + kFeatures800x600 = 1 << 6 }; enum { |