diff options
author | Martin Kiewitz | 2010-01-07 14:46:29 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-01-07 14:46:29 +0000 |
commit | 519e80ca8b57bb7b68a13cea6e83c0404fe0a414 (patch) | |
tree | eb19c6176dfa1b3c26cd9311cf50f8422058760d /engines/sci/graphics/view.cpp | |
parent | 5b063e2d939208415d6940eecfa56720108d4a27 (diff) | |
download | scummvm-rg350-519e80ca8b57bb7b68a13cea6e83c0404fe0a414.tar.gz scummvm-rg350-519e80ca8b57bb7b68a13cea6e83c0404fe0a414.tar.bz2 scummvm-rg350-519e80ca8b57bb7b68a13cea6e83c0404fe0a414.zip |
SCI: implemented additional drawCel for hires views, fixes menu bar of kq6 - still need to fix coordinates and implement save/restoreBits for hires
svn-id: r47116
Diffstat (limited to 'engines/sci/graphics/view.cpp')
-rw-r--r-- | engines/sci/graphics/view.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp index 5c78c2a39c..b93258489d 100644 --- a/engines/sci/graphics/view.cpp +++ b/engines/sci/graphics/view.cpp @@ -460,7 +460,7 @@ void View::unditherBitmap(byte *bitmapPtr, int16 width, int16 height, byte clear } } -void View::draw(Common::Rect rect, Common::Rect clipRect, Common::Rect clipRectTranslated, int16 loopNo, int16 celNo, byte priority, uint16 EGAmappingNr, int16 origHeight, uint16 scaleX, uint16 scaleY) { +void View::draw(Common::Rect rect, Common::Rect clipRect, Common::Rect clipRectTranslated, int16 loopNo, int16 celNo, byte priority, uint16 EGAmappingNr, bool upscaledHires, uint16 scaleX, uint16 scaleY) { Palette *palette = _embeddedPal ? &_viewPalette : &_palette->_sysPalette; CelInfo *celInfo = getCelInfo(loopNo, celNo); byte *bitmap = getBitmap(loopNo, celNo); @@ -487,7 +487,8 @@ void View::draw(Common::Rect rect, Common::Rect clipRect, Common::Rect clipRectT for (x = 0; x < width; x++) { color = bitmap[x]; if (color != clearKey && priority >= _screen->getPriority(clipRectTranslated.left + x, clipRectTranslated.top + y)) { - if (origHeight == -1) // HACK: this parameter is passed for already scaled views, but we're not actually using it + // UpscaledHires means view is hires and is supposed to get drawn onto lowres screen + if (!upscaledHires) _screen->putPixel(clipRectTranslated.left + x, clipRectTranslated.top + y, drawMask, palette->mapping[color], priority, 0); else _screen->putPixelOnDisplay(clipRectTranslated.left + x, clipRectTranslated.top + y, palette->mapping[color]); |