diff options
Diffstat (limited to 'engines/sherlock/scene.cpp')
| -rw-r--r-- | engines/sherlock/scene.cpp | 19 | 
1 files changed, 6 insertions, 13 deletions
| diff --git a/engines/sherlock/scene.cpp b/engines/sherlock/scene.cpp index 028e262999..e4807733c9 100644 --- a/engines/sherlock/scene.cpp +++ b/engines/sherlock/scene.cpp @@ -656,21 +656,14 @@ bool Scene::loadScene(const Common::String &filename) {  			_images[idx + 1]._filesize = bgInfo[idx]._filesize;  			_images[idx + 1]._maxFrames = bgInfo[idx]._maxFrames; -			// Read the image data -			// It seems it's a 8 byte header per frame -			// followed by a copy of the cel header -			// which is then followed by cel data -			// TODO -			warning("image %d, maxFrames %d", idx, bgInfo[idx]._maxFrames); -			warning("size %d", bgInfo[idx]._filesize); +			// Read image data into memory +			Common::SeekableReadStream *imageStream = roomStream->readStream(bgInfo[idx]._filesize); -			// Read in the image data -			//Common::SeekableReadStream *imageStream = roomStream->readStream(bgInfo[idx]._filesize); +			// Load image data into an ImageFile array as room file data +			// which is basically a fixed header, followed by a raw cel header, followed by regular cel data +			_images[idx + 1]._images = new ImageFile3DO(*imageStream, true); -			//_images[idx + 1]._images = new ImageFile(*imageStream); - -			//delete imageStream; -			warning("end"); +			delete imageStream;  		}  		// === BGSHAPES === Set up the bgShapes | 
