diff options
author | Paweł Kołodziejski | 2003-04-12 09:31:00 +0000 |
---|---|---|
committer | Paweł Kołodziejski | 2003-04-12 09:31:00 +0000 |
commit | 6d4b74819942e1766736fab19366317d6ccc2273 (patch) | |
tree | 7420899cf7f2a1ad442742c08db212c5e8e6a616 /scumm | |
parent | 6c2dd8b4d2b3f13584fe90734850d0299f7d08c0 (diff) | |
download | scummvm-rg350-6d4b74819942e1766736fab19366317d6ccc2273.tar.gz scummvm-rg350-6d4b74819942e1766736fab19366317d6ccc2273.tar.bz2 scummvm-rg350-6d4b74819942e1766736fab19366317d6ccc2273.zip |
fixes zplanes for nonblocked games
svn-id: r6981
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/gfx.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp index 27c5b51fc3..dba5fd13c7 100644 --- a/scumm/gfx.cpp +++ b/scumm/gfx.cpp @@ -522,9 +522,7 @@ void Scumm::initBGBuffers(int height) { } room = getResourceAddress(rtRoom, _roomResource); - if (_features & GF_AFTER_V3) { - // FIXME - maybe this should check for multiple planes like we do - // for GF_SMALL_HEADER already. + if ((_features & GF_AFTER_V2) || (_features & GF_AFTER_V3)) { gdi._numZBuffer = 2; } else if (_features & GF_SMALL_HEADER) { int off; @@ -858,7 +856,10 @@ void Gdi::drawBitmap(byte *ptr, VirtScreen *vs, int x, int y, const int h, numzbuf = _disable_zbuffer ? 0 : _numZBuffer; assert(numzbuf <= (int)ARRAYSIZE(zplane_list)); - if (_vm->_features & GF_16COLOR) { + if (_vm->_features & GF_OLD_BUNDLE) { + zplane_list[1] = smap_ptr + READ_LE_UINT16(smap_ptr); + } + if (_vm->_gameId == GID_MONKEY_EGA) { byte *ptr_z = smap_ptr; for (i = 0; i < numzbuf; i++) { int off = READ_LE_UINT16(ptr_z); |