From c27741ac3bb356eecb6b3f9abd1e74cb981ffbed Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Wed, 20 Jun 2012 12:31:51 +0300 Subject: SCI: Implement kRemapColors(5 - set color intensity) It's finally nighttime in the first murder scene in PQ4 --- engines/sci/engine/kgraphics.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index 8f4d99f7df..459766c0a1 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -1237,7 +1237,8 @@ reg_t kRemapColors(EngineState *s, int argc, reg_t *argv) { uint16 percent = argv[2].toUint16(); // 0 - 100 if (argc >= 4) warning("RemapByPercent called with 4 parameters, unknown parameter is %d", argv[3].toUint16()); - g_sci->_gfxPalette->kernelSetIntensity(color, 255, percent, false); + // TODO: It's not correct to set intensity here + //g_sci->_gfxPalette->kernelSetIntensity(color, 255, percent, false); } break; case 3: { // remap to gray @@ -1257,10 +1258,10 @@ reg_t kRemapColors(EngineState *s, int argc, reg_t *argv) { kStub(s, argc, argv); } break; - case 5: { // increment color - //int16 unk1 = argv[1].toSint16(); - //uint16 unk2 = argv[2].toUint16(); - kStub(s, argc, argv); + case 5: { // set color intensity + int16 color = argv[1].toSint16(); + uint16 intensity = argv[2].toUint16(); + g_sci->_gfxPalette->kernelSetIntensity(color, 255, intensity, true); } break; default: -- cgit v1.2.3