[Scummvm-git-logs] scummvm master -> f68e0c6cf274fe5d77e833d8ffdb5470fd6b07b8

bluegr bluegr at gmail.com
Mon Sep 13 18:01:39 UTC 2021


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
72a07ed7f5 SCUMM: Give FREDDI1 his own GID for versions HE71 and HE73
f68e0c6cf2 SCUMM: FREDDI - WORKAROUND for bug #4776, knocker floats while door is open


Commit: 72a07ed7f57ee5fd527500ab00c30183bb512e63
    https://github.com/scummvm/scummvm/commit/72a07ed7f57ee5fd527500ab00c30183bb512e63
Author: Ben Castricum (github at bencastricum.nl)
Date: 2021-09-13T21:01:36+03:00

Commit Message:
SCUMM: Give FREDDI1 his own GID for versions HE71 and HE73

We need this to make the knocker bugfix specific to these game and variants.

Changed paths:
    engines/scumm/detection.h
    engines/scumm/detection_tables.h


diff --git a/engines/scumm/detection.h b/engines/scumm/detection.h
index 3d4beea7cc..a4330026c3 100644
--- a/engines/scumm/detection.h
+++ b/engines/scumm/detection.h
@@ -209,6 +209,7 @@ enum ScummGameId {
 	GID_PUTTMOON,
 	GID_FUNPACK,
 	GID_PUTTZOO,
+	GID_FREDDI,
 	GID_FREDDI3,
 	GID_BIRTHDAYRED,
 	GID_BIRTHDAYYELLOW,
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h
index 5cbc1a1fc8..4266f78dfc 100644
--- a/engines/scumm/detection_tables.h
+++ b/engines/scumm/detection_tables.h
@@ -254,6 +254,8 @@ static const GameSettings gameVariantsTable[] = {
 	{"catalog", "", 0, GID_HEGAME, 6, 71, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
 	{"farm", "", 0, GID_HEGAME, 6, 71, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
 	{"freddi", "", 0, GID_HEGAME, 6, 71, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
+	{"freddi", "HE 71",   0, GID_FREDDI, 6,  71, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
+	{"freddi", "HE 73",   0, GID_FREDDI, 6,  73, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
 
 	// Humongous Entertainment Scumm Version 7.2
 	{"airport", "", 0, GID_HEGAME, 6, 72, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},


Commit: f68e0c6cf274fe5d77e833d8ffdb5470fd6b07b8
    https://github.com/scummvm/scummvm/commit/f68e0c6cf274fe5d77e833d8ffdb5470fd6b07b8
Author: Ben Castricum (github at bencastricum.nl)
Date: 2021-09-13T21:01:36+03:00

Commit Message:
SCUMM: FREDDI - WORKAROUND for bug #4776, knocker floats while door is open

Changed paths:
    engines/scumm/he/script_v60he.cpp


diff --git a/engines/scumm/he/script_v60he.cpp b/engines/scumm/he/script_v60he.cpp
index 0c92fbcac3..c7c111d3ab 100644
--- a/engines/scumm/he/script_v60he.cpp
+++ b/engines/scumm/he/script_v60he.cpp
@@ -304,6 +304,17 @@ void ScummEngine_v60he::o60_setState() {
 	int state = pop();
 	int obj = pop();
 
+	// WORKAROUND for bug #4776, knocker floats while door is open
+	// This hides the knocker when the closed door object is set to hide.
+	if (_game.id == GID_FREDDI && _currentRoom == 7) {
+		if (_game.heversion == 71 && obj == 35 && state == 0) {
+			putState(26, 0);
+		}
+		if (_game.heversion == 73 && obj == 52 && state == 0) {
+			putState(43, 0);
+		}
+	}
+
 	if (state & 0x8000) {
 		state &= 0x7FFF;
 		putState(obj, state);




More information about the Scummvm-git-logs mailing list