aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorFilippos Karapetis2012-06-28 03:27:34 +0300
committerFilippos Karapetis2012-06-28 04:06:58 +0300
commit848575b8264e99eeab2dd0f24dda986909048b93 (patch)
treefe1ac47c48c24ac5ced67108b2ab93a264f9f3ef /engines
parentcc7768869690261d0f6ee3fddc8f0800307813bb (diff)
downloadscummvm-rg350-848575b8264e99eeab2dd0f24dda986909048b93.tar.gz
scummvm-rg350-848575b8264e99eeab2dd0f24dda986909048b93.tar.bz2
scummvm-rg350-848575b8264e99eeab2dd0f24dda986909048b93.zip
SCI: Fix bug #3538418 in SQ4CD
Add a script patch for another speech/subtitles script, which handles the babble icon shown in the quit/death dialogs (e.g. the two guys from Andromeda in the quit dialog). Now, these dialogs have speech both in the speech and the speech + subtitles modes
Diffstat (limited to 'engines')
-rw-r--r--engines/sci/engine/script_patches.cpp23
1 files changed, 22 insertions, 1 deletions
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 69eb377684..659c13b13e 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -978,7 +978,27 @@ const uint16 sq4CdPatchTextOptionsButton[] = {
PATCH_END
};
-// Patch 2: Add the ability to toggle among the three available options,
+// Patch 2: Adjust a check in babbleIcon::init, which handles the babble icon
+// (e.g. the two guys from Andromeda) shown when dying/quitting.
+// Fixes bug #3538418.
+const byte sq4CdSignatureBabbleIcon[] = {
+ 7,
+ 0x89, 0x5a, // lsg 5a
+ 0x35, 0x02, // ldi 02
+ 0x1a, // eq?
+ 0x31, 0x26, // bnt 26 [02a7]
+ 0
+};
+
+const uint16 sq4CdPatchBabbleIcon[] = {
+ 0x89, 0x5a, // lsg 5a
+ 0x35, 0x01, // ldi 01
+ 0x1a, // eq?
+ 0x2f, 0x26, // bt 26 [02a7]
+ PATCH_END
+};
+
+// Patch 3: Add the ability to toggle among the three available options,
// when the text options button is clicked: "Speech", "Text" and "Both".
// Refer to the patch above for additional details.
// iconTextSwitch::doit (called when the text options button is clicked)
@@ -1030,6 +1050,7 @@ const SciScriptSignature sq4Signatures[] = {
{ 298, "Floppy: endless flight", 1, PATCH_MAGICDWORD(0x67, 0x08, 0x63, 0x44), -3, sq4FloppySignatureEndlessFlight, sq4FloppyPatchEndlessFlight },
{ 298, "Floppy (German): endless flight", 1, PATCH_MAGICDWORD(0x67, 0x08, 0x63, 0x4c), -3, sq4FloppySignatureEndlessFlightGerman, sq4FloppyPatchEndlessFlight },
{ 818, "CD: Speech and subtitles option", 1, PATCH_MAGICDWORD(0x89, 0x5a, 0x3c, 0x35), 0, sq4CdSignatureTextOptions, sq4CdPatchTextOptions },
+ { 0, "CD: Babble icon speech and subtitles fix", 1, PATCH_MAGICDWORD(0x89, 0x5a, 0x35, 0x02), 0, sq4CdSignatureBabbleIcon, sq4CdPatchBabbleIcon },
{ 818, "CD: Speech and subtitles option button", 1, PATCH_MAGICDWORD(0x35, 0x01, 0xa1, 0x53), 0, sq4CdSignatureTextOptionsButton, sq4CdPatchTextOptionsButton },
SCI_SIGNATUREENTRY_TERMINATOR
};