diff options
-rw-r--r-- | engines/kyra/detection_tables.h | 17 | ||||
-rw-r--r-- | engines/kyra/script_lol.cpp | 6 |
2 files changed, 23 insertions, 0 deletions
diff --git a/engines/kyra/detection_tables.h b/engines/kyra/detection_tables.h index 84e0f343a7..5c97df8895 100644 --- a/engines/kyra/detection_tables.h +++ b/engines/kyra/detection_tables.h @@ -1146,6 +1146,23 @@ const KYRAGameDescription adGameDescs[] = { "lol", "Extracted", { + { "GENERAL.PAK", 0, "d119e3b57f8e5edcbb90980ca6f4215a", -1 }, + { "CHAPTER7.PAK", 0, "71a3d3cb1554294646a389e5c345cf28", -1 }, + { 0, 0, 0, 0 } + }, + Common::EN_ANY, + Common::kPlatformPC, + ADGF_NO_FLAGS, + Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_FLOPPY_FLAGS + }, + + { + { + "lol", + "Extracted", + { { "GENERAL.PAK", 0, "996e66e81054d36249907a1d8158da3d", -1 }, { "CHAPTER7.PAK", 0, "cabee57f00d6d84b65a732b6868a4959", -1 }, { 0, 0, 0, 0 } diff --git a/engines/kyra/script_lol.cpp b/engines/kyra/script_lol.cpp index 864b6c39c7..33fa16a22c 100644 --- a/engines/kyra/script_lol.cpp +++ b/engines/kyra/script_lol.cpp @@ -267,6 +267,12 @@ int LoLEngine::olol_setItemProperty(EMCState *script) { tmp->nameStringId = stackPos(1); tmp->shpIndex = stackPos(2); tmp->type = stackPos(3); + + // WORKAROUND for unpatched early floppy versions. + // The Vaelan's cube should not be able to be equipped in a weapon slot. + if (stackPos(0) == 264 && tmp->type == 5) + tmp->type = 0; + tmp->itemScriptFunc = stackPos(4); tmp->might = stackPos(5); tmp->skill = stackPos(6); |