diff options
author | Eugene Sandulenko | 2008-01-02 17:33:57 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2008-01-02 17:33:57 +0000 |
commit | a4cbfa354b8892064cae5febcca60cd71266a3cc (patch) | |
tree | 6b0f9aa6898569dea948c3e2aee7f8f92cd6e4fe | |
parent | 6dfaaf3018cd44e8c2eb9356c3d6e2d5f0d89ad7 (diff) | |
download | scummvm-rg350-a4cbfa354b8892064cae5febcca60cd71266a3cc.tar.gz scummvm-rg350-a4cbfa354b8892064cae5febcca60cd71266a3cc.tar.bz2 scummvm-rg350-a4cbfa354b8892064cae5febcca60cd71266a3cc.zip |
Fix bug #1846886: "PUTTZOO: Windows version cursor/pointer drawn wrong"
svn-id: r30154
-rw-r--r-- | engines/scumm/he/resource_he.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/engines/scumm/he/resource_he.cpp b/engines/scumm/he/resource_he.cpp index 9bec74c62a..72db0a8d9e 100644 --- a/engines/scumm/he/resource_he.cpp +++ b/engines/scumm/he/resource_he.cpp @@ -943,15 +943,19 @@ int Win32ResExtractor::convertIcons(byte *data, int datasize, byte **cursor, int uint32 x; uint32 y = (bitmap.height < 0 ? d : height - d - 1); uint32 imod = y * (image_size / height) * 8 / bitmap.bit_count; - //uint32 mmod = y * (mask_size / height) * 8; + uint32 mmod = y * (mask_size / height) * 8; for (x = 0; x < width; x++) { uint32 color = simple_vec(image_data, x + imod, bitmap.bit_count); // We set up cursor palette for default cursor, so use it - if (color) { - cursor[0][width * d + x] = 254; // white + if (!simple_vec(mask_data, x + mmod, 1)) { + if (color) { + cursor[0][width * d + x] = 254; // white + } else { + cursor[0][width * d + x] = 0; // black + } } else { cursor[0][width * d + x] = 255; // transparent } |