diff options
author | Colin Snover | 2017-07-16 21:06:52 -0500 |
---|---|---|
committer | Colin Snover | 2017-07-16 21:25:27 -0500 |
commit | 5fa0e4b780db5e2af1df9709803c53e5ffa86bb4 (patch) | |
tree | 2b93af58f20391763f59c6b08bed6ebf2a521425 | |
parent | 6278aa250a1c65ab035e453d67340ac5a699d6df (diff) | |
download | scummvm-rg350-5fa0e4b780db5e2af1df9709803c53e5ffa86bb4.tar.gz scummvm-rg350-5fa0e4b780db5e2af1df9709803c53e5ffa86bb4.tar.bz2 scummvm-rg350-5fa0e4b780db5e2af1df9709803c53e5ffa86bb4.zip |
SCI32: Improve GK1 narrator speech sync
-rw-r--r-- | engines/sci/engine/guest_additions.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/engines/sci/engine/guest_additions.cpp b/engines/sci/engine/guest_additions.cpp index 6d9bb20d34..d4a2f13813 100644 --- a/engines/sci/engine/guest_additions.cpp +++ b/engines/sci/engine/guest_additions.cpp @@ -604,12 +604,13 @@ void GuestAdditions::syncMessageTypeFromScummVMUsingDefaultStrategy() const { _state->variables[VAR_GLOBAL][kGlobalVarMessageType] = make_reg(0, value); } - if (g_sci->getGameId() == GID_GK1) { - if (value == kMessageTypeSubtitles) { - _state->variables[VAR_GLOBAL][kGlobalVarGK1NarratorMode] = NULL_REG; - } else if (value == kMessageTypeSpeech) { - _state->variables[VAR_GLOBAL][kGlobalVarGK1NarratorMode] = TRUE_REG; - } + if (g_sci->getGameId() == GID_GK1 && value == kMessageTypeSubtitles) { + // The narrator speech needs to be forced off if speech has been + // disabled in ScummVM, but otherwise the narrator toggle should just + // be allowed to persist to whatever the user chose previously, since + // it is controlled independently of other speech in the game and there + // is no equivalent option in the ScummVM GUI + _state->variables[VAR_GLOBAL][kGlobalVarGK1NarratorMode] = NULL_REG; } } |