[Scummvm-git-logs] scummvm branch-2-8 -> 6c472c6cbf0b9fe582c1955c337ac4d3e384b46d

AndywinXp noreply at scummvm.org
Wed Jan 24 20:36:13 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:
6c472c6cbf SCUMM: MANIAC (Amiga): Fix screen transitions being broken instead of disabled


Commit: 6c472c6cbf0b9fe582c1955c337ac4d3e384b46d
    https://github.com/scummvm/scummvm/commit/6c472c6cbf0b9fe582c1955c337ac4d3e384b46d
Author: AndywinXp (andywinxp at gmail.com)
Date: 2024-01-24T21:31:39+01:00

Commit Message:
SCUMM: MANIAC (Amiga): Fix screen transitions being broken instead of disabled

Changed paths:
    engines/scumm/gfx.cpp


diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index 7ed5a3fd845..d469ab3d5fb 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -4071,10 +4071,13 @@ void Gdi::writeRoomColor(byte *dst, byte color) const {
 #pragma mark -
 
 void ScummEngine::fadeIn(int effect) {
-	if (_disableFadeInEffect) {
+	if (_disableFadeInEffect || (_game.id == GID_MANIAC && _game.platform == Common::kPlatformAmiga)) {
 		// fadeIn() calls can be disabled in TheDig after a SMUSH movie
 		// has been played. Like the original interpreter, we introduce
 		// an extra flag to handle this.
+
+		// Screen fades are also disabled in the Amiga version of
+		// Maniac Mansion, verified on WinUAE
 		_disableFadeInEffect = false;
 		_doEffect = false;
 		_screenEffectFlag = true;
@@ -4126,6 +4129,14 @@ void ScummEngine::fadeIn(int effect) {
 }
 
 void ScummEngine::fadeOut(int effect) {
+	// Screen fades are disabled in the Amiga version of
+	// Maniac Mansion, verified on WinUAE
+	if (_game.id == GID_MANIAC && _game.platform == Common::kPlatformAmiga) {
+		_doEffect = false;
+		_screenEffectFlag = false;
+		return;
+	}
+
 	towns_waitForScroll(0);
 
 	VirtScreen *vs = &_virtscr[kMainVirtScreen];
@@ -4206,11 +4217,6 @@ void ScummEngine::transitionEffect(int a) {
 	int delay, numOfIterations;
 	const int height = MIN((int)_virtscr[kMainVirtScreen].h, _screenHeight);
 
-	if (_game.id == GID_MANIAC && _game.platform == Common::kPlatformAmiga) {
-		// No transitions in the Amiga version of Maniac Mansion, verified on WinUAE.
-		return;
-	}
-
 	if (VAR_FADE_DELAY == 0xFF) {
 		if (_game.platform == Common::kPlatformC64) {
 			delay = kC64Delay;




More information about the Scummvm-git-logs mailing list