[Scummvm-git-logs] scummvm master -> 4ed0eed29b77f6eab3d6ec997942d0cc733f8c45
dreammaster
noreply at scummvm.org
Tue Oct 6 11:05:05 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
4ed0eed29b MADS: FOREST: Fix disappearing Abigail after idle anim. Bug #17285
Commit: 4ed0eed29b77f6eab3d6ec997942d0cc733f8c45
https://github.com/scummvm/scummvm/commit/4ed0eed29b77f6eab3d6ec997942d0cc733f8c45
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2026-10-06T22:04:57+11:00
Commit Message:
MADS: FOREST: Fix disappearing Abigail after idle anim. Bug #17285
Thanks to fusefib for identifying the missing code in DigiPlayer
Changed paths:
engines/mads/forest/sound/digi.cpp
diff --git a/engines/mads/forest/sound/digi.cpp b/engines/mads/forest/sound/digi.cpp
index ced2a6a59b0..55c6432f191 100644
--- a/engines/mads/forest/sound/digi.cpp
+++ b/engines/mads/forest/sound/digi.cpp
@@ -30,8 +30,8 @@ namespace MADS {
namespace Forest {
int digi_val2;
-int digi_trigger_effect;
-bool digi_trigger_dialog = false;
+int digi_trigger_effect = -1;
+bool digi_trigger_dialog = true;
bool digi_flag1, digi_flag2;
DigiPlayer::DigiPlayer(Audio::Mixer *mixer) : _mixer(mixer) {
@@ -40,7 +40,8 @@ DigiPlayer::DigiPlayer(Audio::Mixer *mixer) : _mixer(mixer) {
_channels[2]._triggerId = 9;
digi_val2 = 0;
- digi_trigger_effect = 0;
+ digi_trigger_effect = -1;
+ digi_trigger_dialog = true;
digi_flag1 = digi_flag2 = false;
}
@@ -50,6 +51,17 @@ void DigiPlayer::play(const char *name, int slot) {
Audio::AudioStream *audioStream;
Common::SeekableReadStream *src;
+ // The original executable copies these one-shot globals into the
+ // channel's end-trigger flag when starting playback, then restores
+ // the globals to their enabled state for the next sound.
+ if (slot == 1) {
+ c._endTrigger = digi_trigger_dialog;
+ digi_trigger_dialog = true;
+ } else if (slot == 2) {
+ c._endTrigger = digi_trigger_effect != 0;
+ digi_trigger_effect = -1;
+ }
+
src = env_open(Common::String::format("*%s.rac", name).c_str());
if (src) {
// Skip past the HMI header
More information about the Scummvm-git-logs
mailing list