[Scummvm-git-logs] scummvm master -> 036c390478b637b7767e7431025bb3c5a1d0de38
sluicebox
noreply at scummvm.org
Fri Apr 28 20:39:56 UTC 2023
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:
036c390478 SCI: Update LSL1 elevator polygon patch
Commit: 036c390478b637b7767e7431025bb3c5a1d0de38
https://github.com/scummvm/scummvm/commit/036c390478b637b7767e7431025bb3c5a1d0de38
Author: sluicebox (22204938+sluicebox at users.noreply.github.com)
Date: 2023-04-28T13:39:32-07:00
Commit Message:
SCI: Update LSL1 elevator polygon patch
The patch is now only applied to versions with the script bug
Changed paths:
engines/sci/engine/script_patches.cpp
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index e133a32e74a..571f6a8be35 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -8411,13 +8411,14 @@ static const SciScriptPatcherEntry longbowSignatures[] = {
// Pushing the penthouse elevator button in room 350 causes a broken polygon to
// be used for pathfinding. openObstacle:points is set to a local array of 17
-// points but its size property is incorrectly set to 19. We fix the size so
-// that the interpreter doesn't use the wrong values for pathfinding.
+// points but its size property is incorrectly set to 19. In the first version
+// of the game this was correct, but the array was changed without updating the
+// size value. We fix the size so that the interpreter doesn't use the wrong
+// values for pathfinding.
//
-// Applies to: All versions
+// Applies to: All versions except 2.0 VGA
// Responsible method: rm350:init
static const uint16 larry1SignatureElevatorPolygon[] = {
- SIG_MAGICDWORD,
0x5b, 0x02, 0x1f, // lea 02 1f
0x36, // push
0x39, SIG_SELECTOR8(size), // pushi size
@@ -8425,6 +8426,10 @@ static const uint16 larry1SignatureElevatorPolygon[] = {
0x39, 0x13, // pushi 13 [ incorrect size ]
0x72, SIG_ADDTOOFFSET(+2), // lofsa openObstacle
0x4a, 0x0c, // send 0c [ openObstacle points: @local31 size: 19 ]
+ SIG_ADDTOOFFSET(+2),
+ SIG_MAGICDWORD,
+ 0x78, // push1
+ 0x5b, 0x02, 0x41, // lea 02 41 [ 41 in broken versions, otherwise 45 ]
SIG_END
};
More information about the Scummvm-git-logs
mailing list