[Scummvm-cvs-logs] scummvm master -> 4594982ce323d323092927fd336a98dd5acdb11c

bluegr md5 at scummvm.org
Fri Jan 13 23:23:30 CET 2012


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:
4594982ce3 SCI: Fix bug in fadeIn()/fadeOut()


Commit: 4594982ce323d323092927fd336a98dd5acdb11c
    https://github.com/scummvm/scummvm/commit/4594982ce323d323092927fd336a98dd5acdb11c
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2012-01-13T14:21:55-08:00

Commit Message:
SCI: Fix bug in fadeIn()/fadeOut()

This wasn't added in 4742b4d728ba772d47cc497681c9bfb0144475bc)

Changed paths:
    engines/sci/engine/kgraphics.cpp
    engines/sci/graphics/transitions.cpp



diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index eb1d4b6..cfeaaaa 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -1448,12 +1448,12 @@ static void fadeOut() {
 	int16 stepNr, colorNr;
 	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
 	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
-	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 255 : 254;
 
 	g_system->getPaletteManager()->grabPalette(oldPalette, 0, 256);
 
 	for (stepNr = 100; stepNr >= 0; stepNr -= 10) {
-		for (colorNr = 1; colorNr < tillColorNr; colorNr++) {
+		for (colorNr = 1; colorNr <= tillColorNr; colorNr++) {
 			if (g_sci->_gfxPalette->colorIsFromMacClut(colorNr)) {
 				workPalette[colorNr * 3 + 0] = oldPalette[colorNr * 3];
 				workPalette[colorNr * 3 + 1] = oldPalette[colorNr * 3 + 1];
@@ -1464,7 +1464,7 @@ static void fadeOut() {
 				workPalette[colorNr * 3 + 2] = oldPalette[colorNr * 3 + 2] * stepNr / 100;
 			}
 		}
-		g_system->getPaletteManager()->setPalette(workPalette + 3, 1, 254);
+		g_system->getPaletteManager()->setPalette(workPalette + 3, 1, tillColorNr);
 		g_sci->getEngineState()->wait(2);
 	}
 }
@@ -1474,10 +1474,10 @@ static void fadeIn() {
 	int16 stepNr;
 	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
 	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
-	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 255 : 254;
 
 	for (stepNr = 0; stepNr <= 100; stepNr += 10) {
-		g_sci->_gfxPalette->kernelSetIntensity(1, tillColorNr, stepNr, true);
+		g_sci->_gfxPalette->kernelSetIntensity(1, tillColorNr + 1, stepNr, true);
 		g_sci->getEngineState()->wait(2);
 	}
 }
diff --git a/engines/sci/graphics/transitions.cpp b/engines/sci/graphics/transitions.cpp
index d047eb1..438cf37 100644
--- a/engines/sci/graphics/transitions.cpp
+++ b/engines/sci/graphics/transitions.cpp
@@ -295,12 +295,12 @@ void GfxTransitions::fadeOut() {
 	int16 stepNr, colorNr;
 	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
 	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
-	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 255 : 254;
 
 	g_system->getPaletteManager()->grabPalette(oldPalette, 0, 256);
 
 	for (stepNr = 100; stepNr >= 0; stepNr -= 10) {
-		for (colorNr = 1; colorNr < tillColorNr; colorNr++) {
+		for (colorNr = 1; colorNr <= tillColorNr; colorNr++) {
 			if (_palette->colorIsFromMacClut(colorNr)) {
 				workPalette[colorNr * 3 + 0] = oldPalette[colorNr * 3];
 				workPalette[colorNr * 3 + 1] = oldPalette[colorNr * 3 + 1];
@@ -311,7 +311,7 @@ void GfxTransitions::fadeOut() {
 				workPalette[colorNr * 3 + 2] = oldPalette[colorNr * 3 + 2] * stepNr / 100;
 			}
 		}
-		g_system->getPaletteManager()->setPalette(workPalette + 3, 1, 254);
+		g_system->getPaletteManager()->setPalette(workPalette + 3, 1, tillColorNr);
 		g_sci->getEngineState()->wait(2);
 	}
 }
@@ -322,10 +322,10 @@ void GfxTransitions::fadeIn() {
 	int16 stepNr;
 	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
 	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
-	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 255 : 254;
 
 	for (stepNr = 0; stepNr <= 100; stepNr += 10) {
-		_palette->kernelSetIntensity(1, tillColorNr, stepNr, true);
+		_palette->kernelSetIntensity(1, tillColorNr + 1, stepNr, true);
 		g_sci->getEngineState()->wait(2);
 	}
 }






More information about the Scummvm-git-logs mailing list