aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
diff options
context:
space:
mode:
authorathrxx2019-03-30 15:21:26 +0100
committerathrxx2019-04-13 18:55:00 +0200
commitba9a4cd6e19f084f5209075bce77c067ed7f0051 (patch)
tree37d20f111c2c5e929b62f323c4bb19986d42cdde /engines/kyra
parent5f20702ce889972b797625c7d1040a9f12104085 (diff)
downloadscummvm-rg350-ba9a4cd6e19f084f5209075bce77c067ed7f0051.tar.gz
scummvm-rg350-ba9a4cd6e19f084f5209075bce77c067ed7f0051.tar.bz2
scummvm-rg350-ba9a4cd6e19f084f5209075bce77c067ed7f0051.zip
KYRA: (EOB2/Amiga) - fix detect magic blue shapes
Diffstat (limited to 'engines/kyra')
-rw-r--r--engines/kyra/engine/eobcommon.cpp5
-rw-r--r--engines/kyra/engine/items_eob.cpp9
2 files changed, 7 insertions, 7 deletions
diff --git a/engines/kyra/engine/eobcommon.cpp b/engines/kyra/engine/eobcommon.cpp
index 5b7c4aea8e..d7fad04a57 100644
--- a/engines/kyra/engine/eobcommon.cpp
+++ b/engines/kyra/engine/eobcommon.cpp
@@ -806,12 +806,13 @@ void EoBCoreEngine::loadItemsAndDecorationsShapes() {
for (int i = 0; i < _numItemIconShapes; i++)
_itemIconShapes[i] = _screen->encodeShape((i % 0x14) << 1, (i / 0x14) << 4, 2, 0x10, false, _cgaMappingIcons);
- if (_flags.platform == Common::kPlatformAmiga && _flags.gameID == GI_EOB1) {
+ if (_flags.platform == Common::kPlatformAmiga) {
+ const uint8 offsY = (_flags.gameID == GI_EOB1) ? 80 : 96;
_amigaBlueItemIconShapes = new const uint8*[_numItemIconShapes];
for (int i = 0; i < _numItemIconShapes; i++) {
int bx = (i % 0x14) << 1;
int by = (i / 0x14) << 4;
- _amigaBlueItemIconShapes[i] = _screen->getPagePixel(2, (bx << 3) + 8, by + 88) ? _screen->encodeShape(bx, by + 80, 2, 0x10, false, 0) : _screen->encodeShape(bx, by, 2, 0x10, false, 0);
+ _amigaBlueItemIconShapes[i] = _screen->getPagePixel(2, (bx << 3) + 8, by + offsY + 8) ? _screen->encodeShape(bx, by + offsY, 2, 0x10, false, 0) : _screen->encodeShape(bx, by, 2, 0x10, false, 0);
}
}
}
diff --git a/engines/kyra/engine/items_eob.cpp b/engines/kyra/engine/items_eob.cpp
index b4d9d67b2b..39054b614d 100644
--- a/engines/kyra/engine/items_eob.cpp
+++ b/engines/kyra/engine/items_eob.cpp
@@ -466,11 +466,10 @@ void EoBCoreEngine::drawItemIconShape(int pageNum, Item itemId, int x, int y) {
const uint8 *shp = _itemIconShapes[icn];
if (applyBluePal) {
- if (_flags.gameID == GI_EOB1) {
- if (_amigaBlueItemIconShapes)
- shp = _amigaBlueItemIconShapes[icn];
- else
- ovl = (_configRenderMode == Common::kRenderCGA) ? _itemsOverlayCGA : &_itemsOverlay[icn << 4];
+ if (_amigaBlueItemIconShapes) {
+ shp = _amigaBlueItemIconShapes[icn];
+ } else if (_flags.gameID == GI_EOB1) {
+ ovl = (_configRenderMode == Common::kRenderCGA) ? _itemsOverlayCGA : &_itemsOverlay[icn << 4];
} else {
_screen->setFadeTable(_lightBlueFadingTable);
_screen->setShapeFadingLevel(1);