aboutsummaryrefslogtreecommitdiff
path: root/scumm/string.cpp
diff options
context:
space:
mode:
authorTravis Howell2005-05-08 14:31:27 +0000
committerTravis Howell2005-05-08 14:31:27 +0000
commit01b2f3867093cae9626126ce35bd2731a7072c6a (patch)
treee1555496b97df3b005e4b5bab0a2cb78894ffb58 /scumm/string.cpp
parenta81b093e65f90ea70c5b07676a1fcc46d3e95a5e (diff)
downloadscummvm-rg350-01b2f3867093cae9626126ce35bd2731a7072c6a.tar.gz
scummvm-rg350-01b2f3867093cae9626126ce35bd2731a7072c6a.tar.bz2
scummvm-rg350-01b2f3867093cae9626126ce35bd2731a7072c6a.zip
HE games queue speech as sound resource 1.
svn-id: r17965
Diffstat (limited to 'scumm/string.cpp')
-rw-r--r--scumm/string.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/scumm/string.cpp b/scumm/string.cpp
index f41a9bb1fb..e847219ed4 100644
--- a/scumm/string.cpp
+++ b/scumm/string.cpp
@@ -274,7 +274,7 @@ void ScummEngine::CHARSET_1() {
value[i] = 0;
talk_sound_b = atoi(value);
- _sound->talkSound(talk_sound_a, talk_sound_b, 2);
+ _sound->startHETalkSound(talk_sound_a);
break;
case 104:
_haveMsg = 0;
@@ -295,7 +295,7 @@ void ScummEngine::CHARSET_1() {
talk_sound_a = atoi(value);
talk_sound_b = 0;
- _sound->talkSound(talk_sound_a, talk_sound_b, 2);
+ _sound->startHETalkSound(talk_sound_a);
break;
case 119:
if (_haveMsg != 0xFE)
@@ -335,7 +335,11 @@ void ScummEngine::CHARSET_1() {
talk_sound_b = buffer[8] | (buffer[9] << 8) | (buffer[12] << 16) | (buffer[13] << 24);
buffer += 14;
- _sound->talkSound(talk_sound_a, talk_sound_b, 2);
+ if (_heversion >= 60) {
+ _sound->startHETalkSound(talk_sound_a);
+ } else {
+ _sound->talkSound(talk_sound_a, talk_sound_b, 2);
+ }
// Set flag that speech variant exist of this msg.
// This is actually a hack added by ScummVM; the original did
@@ -393,6 +397,8 @@ loc_avoid_ks_fe:
} else {
if ((_imuseDigital && _sound->isSoundRunning(kTalkSoundID)) && (!ConfMan.getBool("subtitles") || VAR(VAR_VOICE_MODE) == 0)) {
// Special case for games using imuse digital.for sound
+ } else if (_heversion >= 60 && !ConfMan.getBool("subtitles") && _sound->isSoundRunning(1)) {
+ // Special case for HE games
} else if ((_gameId == GID_LOOM256) && !ConfMan.getBool("subtitles") && (_sound->pollCD())) {
// Special case for loomcd, since it only uses CD audio.for sound
} else if (!ConfMan.getBool("subtitles") && (_haveMsg == 0xFE || _mixer->isSoundHandleActive(_sound->_talkChannelHandle))) {