[Scummvm-tracker] [ScummVM :: Bugs] #13887: SCUMM: Indy3 (MAC) boxing bell rings 2 times instead of 3
ScummVM :: Bugs
trac at scummvm.org
Mon Oct 24 14:56:37 UTC 2022
#13887: SCUMM: Indy3 (MAC) boxing bell rings 2 times instead of 3
----------------------------+------------------------------
Reporter: dwatteau | Owner: (none)
Type: defect | Status: new
Priority: low | Component: Engine: SCUMM
Version: | Resolution:
Keywords: macintosh,sound | Game: Indiana Jones 3
----------------------------+------------------------------
Comment (by dwatteau):
Thanks. I don't have the Amiga version either, unfortunately…
However, for what it's worth, with a very naive change like this one:
{{{
diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp
index bca8581cc30..458bd3c976a 100644
--- a/engines/scumm/sound.cpp
+++ b/engines/scumm/sound.cpp
@@ -548,7 +548,7 @@ void Sound::playSound(int soundID) {
// offset 22-23: ? often identical to the rate divisior?
(but not in sound 8, which loops)
// offset 24, byte (?): volume
// offset 25: ? same as volume -- maybe left vs. right
channel?
- // offset 26: ? if != 0: stop current sound?
+ // offset 26: ? if == 0: stop current sound? (bug #13887)
// offset 27: ? loopcount? 0xff == -1 for infinite?
size = READ_BE_UINT16(ptr + 12);
@@ -574,6 +574,9 @@ void Sound::playSound(int soundID) {
stream = plainStream;
}
+ if (!ptr[26])
+ _mixer->stopID(soundID);
+
_mixer->playStream(Audio::Mixer::kSFXSoundType, nullptr,
stream, soundID, vol, 0);
}
else {
}}}
the 3 sound effects for the bell can be heard again in the Macintosh
version. I haven't done a full gameplay to check for any regression, but
I've loaded a few dozen saves and it all seems fine. There's a similar
trick around line 851.
--
Ticket URL: <https://bugs.scummvm.org/ticket/13887#comment:11>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list