[Scummvm-git-logs] scummvm master -> 6991ba08a104c55ab149c68c5c2678bb357fa8ad
sev-
noreply at scummvm.org
Sat Jan 20 22:36:18 UTC 2024
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
6991ba08a1 SCUMM: Add workaround for MI2 glitch when diving to the Mad Monkey
Commit: 6991ba08a104c55ab149c68c5c2678bb357fa8ad
https://github.com/scummvm/scummvm/commit/6991ba08a104c55ab149c68c5c2678bb357fa8ad
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2024-01-20T23:36:15+01:00
Commit Message:
SCUMM: Add workaround for MI2 glitch when diving to the Mad Monkey
Just before Guybrush sinks to the ocean floor, he is drawn at the wrong
position for a split second. This happens in the original too, though I
found it much easier to spot in ScummVM for some reason. We work around
this by setting Guybrush's elevation at the same time as he's put into
the room.
Changed paths:
engines/scumm/script_v5.cpp
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp
index a4f4ad71d3b..166844f215e 100644
--- a/engines/scumm/script_v5.cpp
+++ b/engines/scumm/script_v5.cpp
@@ -2006,6 +2006,18 @@ void ScummEngine_v5::o5_putActorAtObject() {
else {
x = 240;
y = 120;
+
+ // WORKAROUND: When Guybrush dives down to the Mad Monkey, he
+ // is positioned near the anchor (though since it can't be
+ // found yet, it uses this default position). He's then lowered
+ // to the ocean floor by adjusting his elevation. But he will
+ // be drawn for a split second at the unelevated position. This
+ // is a bug in the original game, and we work around it by
+ // adjusting the elevation immediately.
+
+ if (_game.id == GID_MONKEY2 && a->_number == 1 && vm.slot[_currentScript].number == 58 && enhancementEnabled(kEnhMinorBugFixes)) {
+ a->setElevation(99);
+ }
}
a->putActor(x, y);
}
More information about the Scummvm-git-logs
mailing list