[Scummvm-tracker] [ScummVM :: Bugs] #12734: SCUMM: Missing sentence when Rapp gives the map piece
ScummVM :: Bugs
trac at scummvm.org
Sun Jul 25 10:12:28 UTC 2021
#12734: SCUMM: Missing sentence when Rapp gives the map piece
---------------------+------------------------------
Reporter: dwatteau | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: SCUMM
Version: | Resolution:
Keywords: | Game: Monkey Island 2
---------------------+------------------------------
Comment (by eriktorbjorn):
WaitForMessage() would probably delay the animation of Rapp turning back
to ashes, so not printing the space is probably better. I don't dare
patching the script when it's loaded, because I don't know how that would
affect localized versions of the game. (I think the strings are hard-coded
in the scripts.) So you'd probably have to detect at runtime when the
print happens, and ignore it. A bit tricky since it happens a couple of
times during that script.
Something like this seems to work, but could use more testing:
{{{
diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index d3a53dfc42..74dfe27c36 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -55,6 +55,22 @@ namespace Scumm {
void ScummEngine::printString(int m, const byte *msg) {
switch (m) {
case 0:
+ // WORKAROUND bug #12734: The script tries to clear the
currently
+ // displayed message after Rapp gives you the map, but
that means
+ // you'll never see Guybrush's reaction to finding a map
piece.
+ //
+ // It's a bit hard to pin down the exact case, since it
happens
+ // at a few different points during the script. We limit
it to
+ // when the player has the map piece.
+ //
+ // We have to do it here, because we don't want to delay
the
+ // animation of Rapp turning back to Ashes.
+ if (_roomResource == 19 && vm.slot[_currentScript].number
== 203 &&
+ _actorToPrintStrFor == 255 && strcmp((const char
*)msg, " ") == 0 &&
+ getOwner(200) == VAR(VAR_EGO) &&
VAR(VAR_HAVE_MSG)) {
+ return;
+ }
+
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/12734#comment:2>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list