aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorFlorian Kagerer2008-07-03 21:09:07 +0000
committerFlorian Kagerer2008-07-03 21:09:07 +0000
commitd92085b5071b0bb62642d62857e5853006be3b2c (patch)
tree85a5890cb1cb37e1b194f9f916b31ba0d2b2fc65 /engines
parent56c6840ff72ab38a508aa0f46662ef7c636e410f (diff)
downloadscummvm-rg350-d92085b5071b0bb62642d62857e5853006be3b2c.tar.gz
scummvm-rg350-d92085b5071b0bb62642d62857e5853006be3b2c.tar.bz2
scummvm-rg350-d92085b5071b0bb62642d62857e5853006be3b2c.zip
minor fix for Towns/PC98 music
svn-id: r32899
Diffstat (limited to 'engines')
-rw-r--r--engines/kyra/sequences_lok.cpp2
-rw-r--r--engines/kyra/sound_lok.cpp15
2 files changed, 10 insertions, 7 deletions
diff --git a/engines/kyra/sequences_lok.cpp b/engines/kyra/sequences_lok.cpp
index b30568c7e2..3a497a258f 100644
--- a/engines/kyra/sequences_lok.cpp
+++ b/engines/kyra/sequences_lok.cpp
@@ -1083,7 +1083,7 @@ void KyraEngine_LoK::seq_playCredits() {
_screen->_charWidth = -1;
// we only need this for the fm-towns version
- if (_flags.platform == Common::kPlatformFMTowns || _flags.platform == Common::kPlatformPC98)
+ if (_flags.platform == Common::kPlatformFMTowns && _configMusic == 1)
snd_playWanderScoreViaMap(53, 1);
uint8 *buffer = 0;
diff --git a/engines/kyra/sound_lok.cpp b/engines/kyra/sound_lok.cpp
index 7d6e1dd378..b43d72ebce 100644
--- a/engines/kyra/sound_lok.cpp
+++ b/engines/kyra/sound_lok.cpp
@@ -49,20 +49,23 @@ void KyraEngine_LoK::snd_playWanderScoreViaMap(int command, int restart) {
} else if (command >= 35 && command <= 38) {
snd_playSoundEffect(command-20);
} else if (command >= 2) {
- if (_lastMusicCommand != command) {
+ if (_lastMusicCommand != command)
// the original does -2 here we handle this inside _sound->playTrack()
_sound->playTrack(command);
- }
} else {
_sound->haltTrack();
}
+ _lastMusicCommand = command;
} else if (_flags.platform == Common::kPlatformPC98) {
- if (command == 1)
+ if (command == 1) {
_sound->beginFadeOut();
- else if (command >= 2)
- _sound->playTrack(command);
- else
+ } else if (command >= 2) {
+ if (_lastMusicCommand != command)
+ _sound->playTrack(command);
+ } else {
_sound->haltTrack();
+ }
+ _lastMusicCommand = command;
} else {
KyraEngine_v1::snd_playWanderScoreViaMap(command, restart);
}