aboutsummaryrefslogtreecommitdiff
path: root/scumm/sound.cpp
diff options
context:
space:
mode:
authorJames Brown2003-01-26 10:54:34 +0000
committerJames Brown2003-01-26 10:54:34 +0000
commit8d9b84b98eb92abbf4d932d6c6e10a10e0fe576b (patch)
treef61414cf51a4da9841a1febd5cd80a3ccaac66cd /scumm/sound.cpp
parent3dc0535a6be1bbb84c397a7656f5222a646d3d59 (diff)
downloadscummvm-rg350-8d9b84b98eb92abbf4d932d6c6e10a10e0fe576b.tar.gz
scummvm-rg350-8d9b84b98eb92abbf4d932d6c6e10a10e0fe576b.tar.bz2
scummvm-rg350-8d9b84b98eb92abbf4d932d6c6e10a10e0fe576b.zip
Patch 671701: SO_TALK_FREQUENCY
svn-id: r6547
Diffstat (limited to 'scumm/sound.cpp')
-rw-r--r--scumm/sound.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/scumm/sound.cpp b/scumm/sound.cpp
index 185774cdd1..4223c5623d 100644
--- a/scumm/sound.cpp
+++ b/scumm/sound.cpp
@@ -1226,6 +1226,13 @@ int Sound::playBundleSound(char *sound) {
byte * final = (byte *)malloc(size);
memcpy(final, ptr, size);
+
+ if (_scumm->_actorToPrintStrFor != 0xFF && _scumm->_actorToPrintStrFor != 0) {
+ Actor *a = _scumm->derefActorSafe(_scumm->_actorToPrintStrFor, "playBundleSound");
+ if (a)
+ rate = (rate * a->talkFrequency) / 256;
+ }
+
if (bits == 8) {
return _scumm->_mixer->playRaw(NULL, final, size, rate, SoundMixer::FLAG_UNSIGNED | SoundMixer::FLAG_AUTOFREE);
} else if (bits == 16){