aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorTravis Howell2010-12-28 06:05:57 +0000
committerTravis Howell2010-12-28 06:05:57 +0000
commitccb8a01b179a40847d670f1510bf715d99b96fbd (patch)
tree0a09842855b27d012d1cd3acb488528728e9020f /engines
parentcfbac503addad7af26a5d9f8795edfd229faefb0 (diff)
downloadscummvm-rg350-ccb8a01b179a40847d670f1510bf715d99b96fbd.tar.gz
scummvm-rg350-ccb8a01b179a40847d670f1510bf715d99b96fbd.tar.bz2
scummvm-rg350-ccb8a01b179a40847d670f1510bf715d99b96fbd.zip
SCUMM: Correct fix for bug #3145951 - DIG: Subtitles won't turn off (regression).
svn-id: r55053
Diffstat (limited to 'engines')
-rw-r--r--engines/scumm/actor.cpp2
-rw-r--r--engines/scumm/string.cpp5
2 files changed, 2 insertions, 5 deletions
diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp
index ca1dc8869f..5906545917 100644
--- a/engines/scumm/actor.cpp
+++ b/engines/scumm/actor.cpp
@@ -2037,7 +2037,7 @@ void ScummEngine_v7::actorTalk(const byte *msg) {
_haveMsg = 1;
if (_game.id == GID_FT)
VAR(VAR_HAVE_MSG) = 0xFF;
- _haveActorSpeechMsg = true;
+ _haveActorSpeechMsg = (_game.id == GID_FT) ? true : (!_sound->isSoundRunning(kTalkSoundID));
if (_game.id == GID_DIG || _game.id == GID_CMI) {
stringWrap = _string[0].wrapping;
_string[0].wrapping = true;
diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index 04ff72ec02..2dfa9da723 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -224,10 +224,7 @@ void ScummEngine_v6::removeBlastTexts() {
void ScummEngine_v7::processSubtitleQueue() {
for (int i = 0; i < _subtitleQueuePos; ++i) {
SubtitleText *st = &_subtitleQueue[i];
- if ((_game.id == GID_DIG || _game.id == GID_CMI) && (!ConfMan.getBool("subtitles") || VAR(VAR_VOICE_MODE) == 0))
- // subtitles are disabled, don't display the text
- continue;
- if (_game.id == GID_FT && !st->actorSpeechMsg && (!ConfMan.getBool("subtitles") || VAR(VAR_VOICE_MODE) == 0))
+ if (!st->actorSpeechMsg && (!ConfMan.getBool("subtitles") || VAR(VAR_VOICE_MODE) == 0))
// no subtitles and there's a speech variant of the message, don't display the text
continue;
enqueueText(st->text, st->xpos, st->ypos, st->color, st->charset, false);