diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/scumm/actor.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/string.cpp | 5 |
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); |