SCUMM: Fix Sophia speaking with Indy's voice when looking at him #4139
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context
In Indy 4, you can play as Sophia in some scenes (for example, in the Azores).
But if you look at Indy with her, she'll speak with Indy's voice, in the Talkie version.
The culprit seems to be script 68-161:
I'm not sure what
Var[181]
is, but when using the "Look at" verb, we reach the lastelse
block. But this default case uses the same sample for Indy and Sophia, hence the wrong voice when playing with Sophia…Proposed workaround
Fortunately, script 68-4 has a dub for the exact same line, with Sophia's voice.
So I just reuse its audio content if
_actorToPrintStrFor
is2
(= playing as Sophia) in this scene, and if the current dialogue line points to the audio offset that we expect. I'm not changing the text itself.AFAIK, there's only a single, identical MONSTER.SOU file for all talkie ports of this game (DOS, Macintosh, FM-TOWNS), but checking the audio offset is still safer, especially for fan translations or any eventual fandub or unknown version of the game.
How to test
6005
, use Esc to skip the fake intro(I've tested the DOS/English version from GOG, my old Macintosh/English CD, and a French fan translation)