diff options
author | Florian Kagerer | 2008-03-28 00:07:40 +0000 |
---|---|---|
committer | Florian Kagerer | 2008-03-28 00:07:40 +0000 |
commit | 221e6bb84f67e8fd808d922a0ff347956b78e166 (patch) | |
tree | 90372e65740d1d7806be561864eca7cb097a5162 | |
parent | 72484b204b85f1d25c01e0f0afc757d9a3c646b9 (diff) | |
download | scummvm-rg350-221e6bb84f67e8fd808d922a0ff347956b78e166.tar.gz scummvm-rg350-221e6bb84f67e8fd808d922a0ff347956b78e166.tar.bz2 scummvm-rg350-221e6bb84f67e8fd808d922a0ff347956b78e166.zip |
- some accuracy changes for KyraEngine_v2::snd_playSoundEffect()
- fix one more skip flag bug in the sequence player
- fix SoundTowns_v2::voicePlay()
svn-id: r31278
-rw-r--r-- | engines/kyra/kyra_v2.cpp | 12 | ||||
-rw-r--r-- | engines/kyra/sequences_v2.cpp | 2 | ||||
-rw-r--r-- | engines/kyra/sound.h | 2 | ||||
-rw-r--r-- | engines/kyra/sound_towns.cpp | 2 |
4 files changed, 10 insertions, 8 deletions
diff --git a/engines/kyra/kyra_v2.cpp b/engines/kyra/kyra_v2.cpp index 11cc9b2fb9..7941a68256 100644 --- a/engines/kyra/kyra_v2.cpp +++ b/engines/kyra/kyra_v2.cpp @@ -1766,13 +1766,15 @@ void KyraEngine_v2::playVoice(int high, int low) { void KyraEngine_v2::snd_playSoundEffect(int track) { debugC(9, kDebugLevelMain | kDebugLevelSound, "KyraEngine_v2::snd_playSoundEffect(%d)", track); - if (track == 10) - track = _lastSfxTrack; + if (_flags.platform == Common::kPlatformFMTowns || _flags.platform == Common::kPlatformPC98) { + if (track == 10) + track = _lastSfxTrack; - if (track == 10 || track == -1) - return; + if (track == 10 || track == -1) + return; - _lastSfxTrack = track; + _lastSfxTrack = track; + } int16 vocIndex = (int16)READ_LE_UINT16(&_ingameSoundIndex[track * 2]); if (vocIndex != -1) diff --git a/engines/kyra/sequences_v2.cpp b/engines/kyra/sequences_v2.cpp index 62bb4f0265..8e4118ea77 100644 --- a/engines/kyra/sequences_v2.cpp +++ b/engines/kyra/sequences_v2.cpp @@ -2605,7 +2605,7 @@ void KyraEngine_v2::seq_showStarcraftLogo() { _screen->fadeToBlack(); _screen->showMouse(); - resetSkipFlag(); + _eventList.clear(); delete ci; } diff --git a/engines/kyra/sound.h b/engines/kyra/sound.h index 1970daa2e2..b786c9e013 100644 --- a/engines/kyra/sound.h +++ b/engines/kyra/sound.h @@ -428,7 +428,7 @@ public: void haltTrack(); void beginFadeOut(); - bool voicePlay(const char *file); + bool voicePlay(const char *file, bool isSfx = false); void playSoundEffect(uint8) {} private: diff --git a/engines/kyra/sound_towns.cpp b/engines/kyra/sound_towns.cpp index 28d869b955..88651fbb5a 100644 --- a/engines/kyra/sound_towns.cpp +++ b/engines/kyra/sound_towns.cpp @@ -1432,7 +1432,7 @@ void SoundTowns_v2::haltTrack() { //_driver->reset(); } -bool SoundTowns_v2::voicePlay(const char *file) { +bool SoundTowns_v2::voicePlay(const char *file, bool) { static const uint16 rates[] = { 0x10E1, 0x0CA9, 0x0870, 0x0654, 0x0438, 0x032A, 0x021C, 0x0194 }; int h = 0; |