diff options
author | lukaslw | 2014-05-07 21:55:25 +0200 |
---|---|---|
committer | lukaslw | 2014-06-22 20:07:58 +0200 |
commit | 11fc17fc50d171d567e21ba49e39f10f448cb769 (patch) | |
tree | 74dba15d7acea272a8e00a52d13a535e50fdd89e /engines/prince/graphics.cpp | |
parent | 2dc0b21bea761af1e216cae768ed02529a1038ed (diff) | |
download | scummvm-rg350-11fc17fc50d171d567e21ba49e39f10f448cb769.tar.gz scummvm-rg350-11fc17fc50d171d567e21ba49e39f10f448cb769.tar.bz2 scummvm-rg350-11fc17fc50d171d567e21ba49e39f10f448cb769.zip |
PRINCE: Change init() to Graphics::drawLine(), code clean up
Diffstat (limited to 'engines/prince/graphics.cpp')
-rw-r--r-- | engines/prince/graphics.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/engines/prince/graphics.cpp b/engines/prince/graphics.cpp index ea03204657..1edf22cfac 100644 --- a/engines/prince/graphics.cpp +++ b/engines/prince/graphics.cpp @@ -98,31 +98,28 @@ void GraphicsMan::makeShadowTable(int brightness, byte *shadowPallete) { int32 currColor; int shadow = brightness * 256 / 100; - byte *originalPallete = new byte[256 * 3]; + byte *originalPallete = (byte *)malloc(256 * 3); _vm->_system->getPaletteManager()->grabPalette(originalPallete, 0, 256); - Common::MemoryReadStream readFirstStream(originalPallete, 256 * 3); - Common::MemoryWriteStream writeStream(shadowPallete, 256); for (int i = 0; i < 256; i++) { - redFirstOrg = readFirstStream.readByte() * shadow / 256; - greenFirstOrg = readFirstStream.readByte() * shadow / 256; - blueFirstOrg = readFirstStream.readByte() * shadow / 256; + redFirstOrg = originalPallete[3 * i] * shadow / 256; + greenFirstOrg = originalPallete[3 * i + 1] * shadow / 256; + blueFirstOrg = originalPallete[3 * i + 2] * shadow / 256; currColor = 0; - Common::MemoryReadStream readSecondStream(originalPallete, 256 * 3); bigValue = 999999999; // infinity for (int j = 0; j < 256; j++) { - redSecondOrg = readSecondStream.readByte(); + redSecondOrg = originalPallete[3 * j]; redNew = redFirstOrg - redSecondOrg; redNew = redNew * redNew; - greenSecondOrg = readSecondStream.readByte(); + greenSecondOrg = originalPallete[3 * j + 1]; greenNew = greenFirstOrg - greenSecondOrg; greenNew = greenNew * greenNew; - blueSecondOrg = readSecondStream.readByte(); + blueSecondOrg = originalPallete[3 * j + 2]; blueNew = blueFirstOrg - blueSecondOrg; blueNew = blueNew * blueNew; @@ -137,9 +134,9 @@ void GraphicsMan::makeShadowTable(int brightness, byte *shadowPallete) { break; } } - writeStream.writeByte(currColor); + shadowPallete[i] = currColor; } - delete[] originalPallete; + free(originalPallete); } } |