diff options
author | Travis Howell | 2003-05-19 09:41:28 +0000 |
---|---|---|
committer | Travis Howell | 2003-05-19 09:41:28 +0000 |
commit | 7091080e7da0fd7f62343a2fef19bc2091baa162 (patch) | |
tree | 2e8c9a93f155707e48d0615ca7f915184703cd43 /simon/items.cpp | |
parent | 3d14e5305e7b87c3394dbd9ffee80186adbe70bb (diff) | |
download | scummvm-rg350-7091080e7da0fd7f62343a2fef19bc2091baa162.tar.gz scummvm-rg350-7091080e7da0fd7f62343a2fef19bc2091baa162.tar.bz2 scummvm-rg350-7091080e7da0fd7f62343a2fef19bc2091baa162.zip |
Try and make some sense ot of simon 2 midi systems
svn-id: r7678
Diffstat (limited to 'simon/items.cpp')
-rw-r--r-- | simon/items.cpp | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/simon/items.cpp b/simon/items.cpp index f2f84fba06..7df7b91541 100644 --- a/simon/items.cpp +++ b/simon/items.cpp @@ -753,7 +753,7 @@ int SimonState::runScript() { if (_debugMode) warning("stopMidiMusic: not implemented"); _vc70_var2 = 0xFFFF; - _midi_unk1 = 0xFFFF; + _last_music_played = 0xFFFF; _vc72_var1 = 0xFFFF; } break; @@ -1441,27 +1441,24 @@ void SimonState::o_unk_127() { if (_debugMode) warning("o_unk_127(%d,%d,%d) not implemented properly", a, b, c); - if (_midi_unk1 == a) { - if (b == _vc72_var1 || b == 999) { + if (_last_music_played == a) { + if (b == _vc72_var1 || b == 999) return; - } + if (_vc72_var1 != 0xFFFF || _vc72_var1 != 999) { _vc70_var2 = c; _vc70_var1 = 0xffff; _vc72_var3 = 0xffff; - _midi_unk2 = 0xffff; - if (_game & GF_WIN) { - // FIXME: What do we expect to happen at this moment? - // midi.initialize(); - // midi.play(); - } + _next_music_to_play = 0xffff; + if (!(_music_paused)) + midi_play(b); _vc72_var1 = b; } else { _vc72_var3 = b; _vc72_var2 = c; } } else if (b == 999) { - _midi_unk2 = a; + _next_music_to_play = a; } } else { if (a != _last_music_played) { |