From f3265626eddbfb49a0a5c332731052147aef5cac Mon Sep 17 00:00:00 2001 From: Bastien Bouclet Date: Sat, 20 Feb 2016 13:59:27 +0100 Subject: MOHAWK: Fix Channelwood's opcode 129 It should only play the sound if no other is already playing --- engines/mohawk/myst_stacks/channelwood.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/engines/mohawk/myst_stacks/channelwood.cpp b/engines/mohawk/myst_stacks/channelwood.cpp index cd6935bdeb..659c5dcdf2 100644 --- a/engines/mohawk/myst_stacks/channelwood.cpp +++ b/engines/mohawk/myst_stacks/channelwood.cpp @@ -747,8 +747,9 @@ void Channelwood::o_soundReplace(uint16 op, uint16 var, uint16 argc, uint16 *arg uint16 soundId = argv[0]; - // TODO: If is foreground playing - _vm->_sound->replaceSoundMyst(soundId); + if (!_vm->_sound->isPlaying()) { + _vm->_sound->replaceSoundMyst(soundId); + } } void Channelwood::o_lever_init(uint16 op, uint16 var, uint16 argc, uint16 *argv) { -- cgit v1.2.3