aboutsummaryrefslogtreecommitdiff
path: root/simon
diff options
context:
space:
mode:
authorJamieson Christian2003-05-24 03:26:12 +0000
committerJamieson Christian2003-05-24 03:26:12 +0000
commite23f76b74277dd625ca67048c5ad95095d495cdd (patch)
tree8927b4a3a911354095c2939faa58a74af4ccdd7b /simon
parent1b4b6030fedf0fde1431e2e53d03a97caade4005 (diff)
downloadscummvm-rg350-e23f76b74277dd625ca67048c5ad95095d495cdd.tar.gz
scummvm-rg350-e23f76b74277dd625ca67048c5ad95095d495cdd.tar.bz2
scummvm-rg350-e23f76b74277dd625ca67048c5ad95095d495cdd.zip
Hack to prevent bad music looping at end of simon1win
svn-id: r7875
Diffstat (limited to 'simon')
-rw-r--r--simon/simon.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp
index 70a14d3a47..acbdb18d6d 100644
--- a/simon/simon.cpp
+++ b/simon/simon.cpp
@@ -5310,6 +5310,14 @@ void SimonState::loadMusic (uint music) {
midi.setLoop (true); // Must do this BEFORE loading music. (GMF may have its own override.)
if (_game & GF_WIN) {
+ // FIXME: The very last music resource, a cymbal crash for when the
+ // two golems... er... gargoyles crash into each other, should NOT
+ // be looped like the other music tracks. In simon1dos the GMF
+ // resource includes a loop override that acomplishes this, but
+ // there seems to be nothing for this in the SMF resources.
+ if (music == 35)
+ midi.setLoop (false);
+
_game_file->seek(_game_offsets_ptr[gss->MUSIC_INDEX_BASE + music], SEEK_SET);
midi.loadMultipleSMF (_game_file);
} else if (_game & GF_TALKIE) {