[Scummvm-cvs-logs] scummvm master -> 5a2e65469f3650dc9785bf27b77d25d285ded4f1

bluegr md5 at scummvm.org
Wed Jun 20 12:37:56 CEST 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:
5a2e65469f SCI: Change kRemapColors(5) again. Fixes the colors in QFG4


Commit: 5a2e65469f3650dc9785bf27b77d25d285ded4f1
    https://github.com/scummvm/scummvm/commit/5a2e65469f3650dc9785bf27b77d25d285ded4f1
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2012-06-20T03:36:29-07:00

Commit Message:
SCI: Change kRemapColors(5) again. Fixes the colors in QFG4

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



diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index 59dba99..0ef268f 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -1260,9 +1260,16 @@ reg_t kRemapColors(EngineState *s, int argc, reg_t *argv) {
 		}
 		break;
 	case 5:	{ // set color intensity
-		int16 color = argv[1].toSint16();
+		// TODO: This isn't right, it should be setting a mapping table instead.
+		// For PQ4, we can emulate this with kernelSetIntensity(). In QFG4, this
+		// won't do.
+		//int16 mapping = argv[1].toSint16();
 		uint16 intensity = argv[2].toUint16();
-		g_sci->_gfxPalette->kernelSetIntensity(color, 255, intensity, true);
+		// HACK for PQ4
+		if (g_sci->getGameId() == GID_PQ4)
+			g_sci->_gfxPalette->kernelSetIntensity(0, 255, intensity, true);
+
+		kStub(s, argc, argv);
 		}
 		break;
 	default:






More information about the Scummvm-git-logs mailing list