[Scummvm-cvs-logs] scummvm master -> 8d385f300e0b81d89cf787fff89e0c89c4e124b3
m-kiewitz
m_kiewitz at users.sourceforge.net
Fri Jun 12 23:34:21 CEST 2015
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
8d385f300e SHERLOCK: 3DO: implement offX/Y for cel room data
Commit: 8d385f300e0b81d89cf787fff89e0c89c4e124b3
https://github.com/scummvm/scummvm/commit/8d385f300e0b81d89cf787fff89e0c89c4e124b3
Author: Martin Kiewitz (m_kiewitz at users.sourceforge.net)
Date: 2015-06-12T23:34:32+02:00
Commit Message:
SHERLOCK: 3DO: implement offX/Y for cel room data
fixes graphical glitches when watson sits down
Changed paths:
engines/sherlock/image_file.cpp
diff --git a/engines/sherlock/image_file.cpp b/engines/sherlock/image_file.cpp
index 660c38e..9ee3e33 100644
--- a/engines/sherlock/image_file.cpp
+++ b/engines/sherlock/image_file.cpp
@@ -555,6 +555,8 @@ void ImageFile3DO::load3DOCelFile(Common::SeekableReadStream &stream) {
void ImageFile3DO::load3DOCelRoomData(Common::SeekableReadStream &stream) {
int streamSize = stream.size();
uint16 roomDataHeader_size = 0;
+ byte roomDataHeader_offsetX = 0;
+ byte roomDataHeader_offsetY = 0;
// CCB chunk (cel control block)
uint32 ccbFlags = 0;
@@ -574,7 +576,8 @@ void ImageFile3DO::load3DOCelRoomData(Common::SeekableReadStream &stream) {
// 3DO sherlock holmes room data header
stream.skip(4); // Possibly UINT16 width, UINT16 height?!?!
roomDataHeader_size = stream.readUint16BE();
- stream.skip(2); // seems to be filler
+ roomDataHeader_offsetX = stream.readByte();
+ roomDataHeader_offsetY = stream.readByte();
// 3DO raw cel control block
ccbFlags = stream.readUint32BE();
@@ -617,8 +620,8 @@ void ImageFile3DO::load3DOCelRoomData(Common::SeekableReadStream &stream) {
imageFrame._width = ccbWidth;
imageFrame._height = ccbHeight;
imageFrame._paletteBase = 0;
- imageFrame._offset.x = 0;
- imageFrame._offset.y = 0;
+ imageFrame._offset.x = roomDataHeader_offsetX;
+ imageFrame._offset.y = roomDataHeader_offsetY;
imageFrame._rleEncoded = ccbFlags_compressed;
imageFrame._size = 0;
More information about the Scummvm-git-logs
mailing list