SCI: Add support for the King's Questions mini-game

This can be found in the KQ collection
This commit is contained in:
Filippos Karapetis 2013-08-20 19:43:05 +03:00
parent 1f89b4e902
commit bd945bc756
4 changed files with 15 additions and 5 deletions

View file

@ -105,9 +105,8 @@ static const PlainGameDescriptor s_sciGameTitles[] = {
// === SCI2.1 games ======================================================== // === SCI2.1 games ========================================================
{"chest", "Inside the Chest"}, // aka Behind the Developer's Shield {"chest", "Inside the Chest"}, // aka Behind the Developer's Shield
{"gk2", "The Beast Within: A Gabriel Knight Mystery"}, {"gk2", "The Beast Within: A Gabriel Knight Mystery"},
// TODO: Inside The Chest/Behind the Developer's Shield
{"kq7", "King's Quest VII: The Princeless Bride"}, {"kq7", "King's Quest VII: The Princeless Bride"},
// TODO: King's Questions {"kquestions", "King's Questions"},
{"lsl6hires", "Leisure Suit Larry 6: Shape Up or Slip Out!"}, {"lsl6hires", "Leisure Suit Larry 6: Shape Up or Slip Out!"},
{"mothergoosehires","Mixed-Up Mother Goose Deluxe"}, {"mothergoosehires","Mixed-Up Mother Goose Deluxe"},
{"phantasmagoria", "Phantasmagoria"}, {"phantasmagoria", "Phantasmagoria"},
@ -161,6 +160,7 @@ static const GameIdStrToEnum s_gameIdStrToEnum[] = {
{ "kq5", GID_KQ5 }, { "kq5", GID_KQ5 },
{ "kq6", GID_KQ6 }, { "kq6", GID_KQ6 },
{ "kq7", GID_KQ7 }, { "kq7", GID_KQ7 },
{ "kquestions", GID_KQUESTIONS },
{ "laurabow", GID_LAURABOW }, { "laurabow", GID_LAURABOW },
{ "laurabow2", GID_LAURABOW2 }, { "laurabow2", GID_LAURABOW2 },
{ "lighthouse", GID_LIGHTHOUSE }, { "lighthouse", GID_LIGHTHOUSE },
@ -242,6 +242,7 @@ static const OldNewIdTableEntry s_oldNewTable[] = {
// kq5 is the same // kq5 is the same
// kq6 is the same // kq6 is the same
{ "kq7cd", "kq7", SCI_VERSION_NONE }, { "kq7cd", "kq7", SCI_VERSION_NONE },
{ "quizgame-demo", "kquestions", SCI_VERSION_NONE },
{ "mm1", "laurabow", SCI_VERSION_NONE }, { "mm1", "laurabow", SCI_VERSION_NONE },
{ "cb1", "laurabow", SCI_VERSION_NONE }, { "cb1", "laurabow", SCI_VERSION_NONE },
{ "lb2", "laurabow2", SCI_VERSION_NONE }, { "lb2", "laurabow2", SCI_VERSION_NONE },

View file

@ -1656,6 +1656,14 @@ static const struct ADGameDescription SciGameDescriptions[] = {
AD_LISTEND}, AD_LISTEND},
Common::EN_ANY, Common::kPlatformWindows, ADGF_DEMO | ADGF_UNSTABLE, GUIO5(GUIO_NOSPEECH, GUIO_NOASPECT, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_ORIGINAL_SAVELOAD, GAMEOPTION_FB01_MIDI) }, Common::EN_ANY, Common::kPlatformWindows, ADGF_DEMO | ADGF_UNSTABLE, GUIO5(GUIO_NOSPEECH, GUIO_NOASPECT, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_ORIGINAL_SAVELOAD, GAMEOPTION_FB01_MIDI) },
// King's Questions mini-game from the King's Quest Collection
// SCI interpreter version 2.000.000
{"kquestions", "", {
{"resource.000", 0, "9b1cddecd4f0720d83661ba7aed28891", 162697},
{"resource.map", 0, "93a2251fa64e729d7a7d2fe56b217c8e", 502},
AD_LISTEND},
Common::EN_ANY, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO3(GUIO_NOSPEECH, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_FB01_MIDI) },
#endif // ENABLE_SCI32 #endif // ENABLE_SCI32
// Laura Bow - English Amiga // Laura Bow - English Amiga

View file

@ -467,9 +467,9 @@ bool GameFeatures::autoDetectSci21KernelType() {
// seen it happen in the RAMA demo, thus we can assume that the // seen it happen in the RAMA demo, thus we can assume that the
// game is using a SCI2.1 table // game is using a SCI2.1 table
// HACK: The Inside the Chest Demo doesn't have sounds at all, but // HACK: The Inside the Chest Demo and King's Questions minigame
// it's using a SCI2 kernel // don't have sounds at all, but they're using a SCI2 kernel
if (g_sci->getGameId() == GID_CHEST) { if (g_sci->getGameId() == GID_CHEST || g_sci->getGameId() == GID_KQUESTIONS) {
_sci21KernelType = SCI_VERSION_2; _sci21KernelType = SCI_VERSION_2;
return true; return true;
} }

View file

@ -138,6 +138,7 @@ enum SciGameId {
GID_KQ5, GID_KQ5,
GID_KQ6, GID_KQ6,
GID_KQ7, GID_KQ7,
GID_KQUESTIONS,
GID_LAURABOW, GID_LAURABOW,
GID_LAURABOW2, GID_LAURABOW2,
GID_LIGHTHOUSE, GID_LIGHTHOUSE,