aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorKari Salminen2008-08-09 16:07:08 +0000
committerKari Salminen2008-08-09 16:07:08 +0000
commite02f94d3922b39bdc8d0333c2e9fd602aeb40ef6 (patch)
treeca270f2ba77a94026b88ab2d8ed03b9275ca79d7 /engines
parent80648431d93dbbeb8707f64e334c31c2e7ec8587 (diff)
downloadscummvm-rg350-e02f94d3922b39bdc8d0333c2e9fd602aeb40ef6.tar.gz
scummvm-rg350-e02f94d3922b39bdc8d0333c2e9fd602aeb40ef6.tar.bz2
scummvm-rg350-e02f94d3922b39bdc8d0333c2e9fd602aeb40ef6.zip
Added preliminary version of drawing type 22 overlays (Such overlays are added with opcode 0xA4 (o2_loadMask22) and removed with opcode 0xA5 (o2_unloadMask22)). Things might be wrong so needs testing! WIP!
svn-id: r33713
Diffstat (limited to 'engines')
-rw-r--r--engines/cine/gfx.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/cine/gfx.cpp b/engines/cine/gfx.cpp
index 524610eece..b882c9760e 100644
--- a/engines/cine/gfx.cpp
+++ b/engines/cine/gfx.cpp
@@ -1109,6 +1109,16 @@ void OSRenderer::renderOverlay(const Common::List<overlay>::iterator &it) {
maskBgOverlay(_bgTable[it->x].bg, sprite->data(), sprite->_realWidth, sprite->_height, _backBuffer, obj->x, obj->y);
break;
+ // TODO: Figure out what this overlay type is and name it
+ // TODO: Check it this implementation really works correctly (Some things might be wrong, needs testing)
+ case 22: {
+ assert(it->objIdx < NUM_MAX_OBJECT);
+ obj = objectTable + it->objIdx;
+ byte transCol = obj->part & 0x0F;
+ drawPlainBox(obj->x, obj->y, obj->frame, obj->costume, transCol);
+ break;
+ }
+
// something else
default:
FWRenderer::renderOverlay(it);