[Scummvm-git-logs] scummvm master -> 45d852cbaf5e46982bb98fb6425c34cd68537be1

bluegr bluegr at gmail.com
Thu Dec 27 22:50:00 CET 2018


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:
45d852cbaf SCI32: Fix GK1 Wolfgang phone obstacle bug, #10853


Commit: 45d852cbaf5e46982bb98fb6425c34cd68537be1
    https://github.com/scummvm/scummvm/commit/45d852cbaf5e46982bb98fb6425c34cd68537be1
Author: sluicebox (22204938+sluicebox at users.noreply.github.com)
Date: 2018-12-27T23:49:57+02:00

Commit Message:
SCI32: Fix GK1 Wolfgang phone obstacle bug, #10853

Fixes bug in original which places ego outside the room's obstacle boundary

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 a47466b..930c9dc 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -2123,6 +2123,28 @@ static const uint16 gk1ArtistVeveCopyPatch[] = {
 	PATCH_END
 };
 
+// After phoning Wolfgang on day 7, Gabriel is placed beyond room 220's obstacle
+//  boundary and can walk through walls and behind the room. This also occurs in
+//  the original. The script inconsistently uses accessible and inaccessible
+//  positions for placing ego next to the phone. We patch all instances to use
+//  the accessible position.
+//
+// Applies to: All PC Floppy and CD versions. TODO: Test Mac, should apply
+// Responsible methods: rm220:init, useThePhone:changeState(0)
+// Fixes bug #10853
+static const uint16 gk1EgoPhonePositionSignature[] = {
+	SIG_MAGICDWORD,
+	0x39, 0x68,                         // pushi 68 [ x: 104 ]
+	0x39, 0x7e,                         // pushi 7e [ y: 126 ]
+	SIG_END,
+};
+
+static const uint16 gk1EgoPhonePositionPatch[] = {
+	0x39, 0x6b,                         // pushi 6b [ x: 107 ]
+	0x39, 0x7c,                         // pushi 7c [ y: 124 ]
+	PATCH_END,
+};
+
 //          script, description,                                      signature                         patch
 static const SciScriptPatcherEntry gk1Signatures[] = {
 	{  true,     0, "remove alt+n syslogger hotkey",               1, gk1SysLoggerHotKeySignature,      gk1SysLoggerHotKeyPatch },
@@ -2130,6 +2152,7 @@ static const SciScriptPatcherEntry gk1Signatures[] = {
 	{  true,   211, "fix day 1 grace phone speech timing",         1, gk1Day1GracePhoneSignature,       gk1Day1GracePhonePatch },
 	{  true,   212, "fix day 5 drum book dialogue error",          1, gk1Day5DrumBookDialogueSignature, gk1Day5DrumBookDialoguePatch },
 	{  true,   212, "fix day 5 phone softlock",                    1, gk1Day5PhoneFreezeSignature,      gk1Day5PhoneFreezePatch },
+	{  true,   220, "fix ego phone position",                      2, gk1EgoPhonePositionSignature,     gk1EgoPhonePositionPatch },
 	{  true,   230, "fix day 6 police beignet timer issue (1/2)",  1, gk1Day6PoliceBeignetSignature1,   gk1Day6PoliceBeignetPatch1 },
 	{  true,   230, "fix day 6 police beignet timer issue (2/2)",  1, gk1Day6PoliceBeignetSignature2,   gk1Day6PoliceBeignetPatch2 },
 	{  true,   230, "fix day 6 police sleep timer issue",          1, gk1Day6PoliceSleepSignature,      gk1Day6PoliceSleepPatch },





More information about the Scummvm-git-logs mailing list