[Scummvm-git-logs] scummvm master -> 28891948d62174cb0d37bd64e62179ae25f578c1

dwatteau noreply at scummvm.org
Sat Aug 31 07:35:24 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:
28891948d6 SCUMM: Backport a small enhancement from the Japanese Indy3 FM-TOWNS release


Commit: 28891948d62174cb0d37bd64e62179ae25f578c1
    https://github.com/scummvm/scummvm/commit/28891948d62174cb0d37bd64e62179ae25f578c1
Author: Donovan Watteau (contrib at dwatteau.fr)
Date: 2024-08-31T09:34:45+02:00

Commit Message:
SCUMM: Backport a small enhancement from the Japanese Indy3 FM-TOWNS release

One of the tunnels in the catacombs has no object description at all, in some
Indy3 releases. This was fixed in the Japanese FM-TOWNS release, but not in
the English FM-TOWNS release (this, among other differences between the two
releases, makes me think that the Japanese release actually benefited from
some late fixes).

This is a very minor issue, but since it's trivial to fix it, and since LEC
decided that it was worth a bugfix themselves, let's do it too.

Changed paths:
    engines/scumm/string.cpp


diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index bde45729580..6a80a79e49f 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -1688,7 +1688,21 @@ int ScummEngine::convertNameMessage(byte *dst, int dstSize, int var) {
 	num = readVar(var);
 	if (num) {
 		const byte *ptr = getObjOrActorName(num);
+
 		if (ptr) {
+			// WORKAROUND: Some releases of Indy3 miss the description of one of the
+			// tunnels in the catacombs. For example, it's there in the Macintosh or
+			// in the Japanese FM-TOWNS release, but missing from the English FM-TOWNS
+			// or the DOS VGA releases. This is a minor issue, but since LEC themselves
+			// fixed this for some releases, we can do the same... just copy the object
+			// description from the other tunnel, if the former is empty.
+			if (_game.id == GID_INDY3 && _roomResource == 59 && num == 725 && *ptr == 0 &&
+				whereIsObject(724) != WIO_NOT_FOUND && enhancementEnabled(kEnhMinorBugFixes)) {
+				const byte *fallbackObjPtr = getObjOrActorName(724);
+				if (fallbackObjPtr)
+					ptr = fallbackObjPtr;
+			}
+
 			int increment = convertMessageToString(ptr, dst, dstSize);
 			// Save the final consonant (jongsung) of the last Korean character
 			// Used by Korean fan translated games (monkey1, monkey2)




More information about the Scummvm-git-logs mailing list