diff options
| author | Max Horn | 2002-12-31 03:26:02 +0000 |
|---|---|---|
| committer | Max Horn | 2002-12-31 03:26:02 +0000 |
| commit | 5d4f06cf1f5b75b0ee719b41cf69443f2fd1b9a8 (patch) | |
| tree | bd5f794d8bb0102b6a015afa40c876bb2435b25e /scumm/gfx.cpp | |
| parent | 166ea5bcee36aaab30ea6b7764bdc9872fc2dcf2 (diff) | |
| download | scummvm-rg350-5d4f06cf1f5b75b0ee719b41cf69443f2fd1b9a8.tar.gz scummvm-rg350-5d4f06cf1f5b75b0ee719b41cf69443f2fd1b9a8.tar.bz2 scummvm-rg350-5d4f06cf1f5b75b0ee719b41cf69443f2fd1b9a8.zip | |
implemented object drawing (still somewhat broken, we get a 'green screen' effetc :-). Oh yes, this probably breaks save game compatibility for COMI. Oh yeah. As if I would care <g>
svn-id: r6285
Diffstat (limited to 'scumm/gfx.cpp')
| -rw-r--r-- | scumm/gfx.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp index 018e3ff725..dfdbaa2f69 100644 --- a/scumm/gfx.cpp +++ b/scumm/gfx.cpp @@ -62,14 +62,6 @@ static const int8 shake_positions[NUM_SHAKE_POSITIONS] = { 0, 1 * 2, 2 * 2, 1 * 2, 0 * 2, 2 * 2, 3 * 2, 1 * 2 }; -static const uint32 zplane_tags[] = { - MKID('ZP00'), - MKID('ZP01'), - MKID('ZP02'), - MKID('ZP03'), - MKID('ZP04') -}; - static const int8 screen_eff7_table1[4][16] = { { 1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, 1, 1, -1}, @@ -805,6 +797,8 @@ void Gdi::drawBitmap(byte *ptr, VirtScreen *vs, int x, int y, const int h, CHECK_HEAP; if (_vm->_features & GF_SMALL_HEADER) smap_ptr = ptr; + else if (_vm->_features & GF_AFTER_V8) + smap_ptr = ptr; else smap_ptr = findResource(MKID('SMAP'), ptr); @@ -845,6 +839,14 @@ void Gdi::drawBitmap(byte *ptr, VirtScreen *vs, int x, int y, const int h, // A small hack to skip to the BSTR->WRAP->OFFS chunk smap_ptr += 24; } else { + const uint32 zplane_tags[] = { + MKID('ZP00'), + MKID('ZP01'), + MKID('ZP02'), + MKID('ZP03'), + MKID('ZP04') + }; + for (i = 1; i < numzbuf; i++) { zplane_list[i] = findResource(zplane_tags[i], ptr); } |
