diff options
author | athrxx | 2012-02-13 17:04:05 +0100 |
---|---|---|
committer | athrxx | 2012-02-21 21:48:41 +0100 |
commit | 151d314912b08d7d598a3995524d89c8b4ab0371 (patch) | |
tree | 3900afdabb806c3fb6e46c947c672e369eeaf952 /engines/kyra/items_eob.cpp | |
parent | 86a817beb5eef248c5f5e28f18133db802a59c2e (diff) | |
download | scummvm-rg350-151d314912b08d7d598a3995524d89c8b4ab0371.tar.gz scummvm-rg350-151d314912b08d7d598a3995524d89c8b4ab0371.tar.bz2 scummvm-rg350-151d314912b08d7d598a3995524d89c8b4ab0371.zip |
KYRA: (EOB) - complete CGA graphics mode implementation
Diffstat (limited to 'engines/kyra/items_eob.cpp')
-rw-r--r-- | engines/kyra/items_eob.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/engines/kyra/items_eob.cpp b/engines/kyra/items_eob.cpp index 979b68d34b..5b65887d4b 100644 --- a/engines/kyra/items_eob.cpp +++ b/engines/kyra/items_eob.cpp @@ -462,19 +462,18 @@ void EoBCoreEngine::identifyQueuedItems(Item itemQueue) { void EoBCoreEngine::drawItemIconShape(int pageNum, Item itemId, int x, int y) { int icn = _items[itemId].icon; bool applyBluePal = ((_partyEffectFlags & 2) && (_items[itemId].flags & 0x80)) ? true : false; - - memcpy(_tempIconShape, _itemIconShapes[icn], _itemIconShapes[icn][1] * _itemIconShapes[icn][2] * 4 + 20); + const uint8 *ovl = 0; if (applyBluePal) { - if (_flags.gameID == GI_EOB1) { - _screen->replaceShapePalette(_tempIconShape, &_itemsOverlay[icn << 4]); + if (_flags.gameID == GI_EOB1) { + ovl = (_configRenderMode == Common::kRenderCGA) ? _itemsOverlayCGA : &_itemsOverlay[icn << 4]; } else { _screen->setFadeTableIndex(3); _screen->setShapeFadeMode(1, true); } } - _screen->drawShape(pageNum, _tempIconShape, x, y, 0); + _screen->drawShape(pageNum, _itemIconShapes[icn], x, y, 0, ovl ? 2 : 0, ovl); if (applyBluePal) { _screen->setFadeTableIndex(4); |