diff options
author | Sven Hesse | 2011-01-20 10:20:57 +0000 |
---|---|---|
committer | Sven Hesse | 2011-01-20 10:20:57 +0000 |
commit | 6b85f809d9fcb2e7140944b5a8be14373b8fc081 (patch) | |
tree | 310755730b08359c0038b7a837091fa5df71b6c8 /engines/gob/videoplayer.cpp | |
parent | dd3894a44248e2c5b2c646b4cc1d1353442b7fbb (diff) | |
download | scummvm-rg350-6b85f809d9fcb2e7140944b5a8be14373b8fc081.tar.gz scummvm-rg350-6b85f809d9fcb2e7140944b5a8be14373b8fc081.tar.bz2 scummvm-rg350-6b85f809d9fcb2e7140944b5a8be14373b8fc081.zip |
GOB: Urban: Fix missing visuals at Cemetary/Lab
Urban Runner decouples _frontSurface and
_spritesArray[kFrontSurface] at that screen... *sigh*
svn-id: r55346
Diffstat (limited to 'engines/gob/videoplayer.cpp')
-rw-r--r-- | engines/gob/videoplayer.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/gob/videoplayer.cpp b/engines/gob/videoplayer.cpp index a7284feb66..6b6bc570da 100644 --- a/engines/gob/videoplayer.cpp +++ b/engines/gob/videoplayer.cpp @@ -158,13 +158,20 @@ int VideoPlayer::openVideo(bool primary, const Common::String &file, Properties screenSize ? _vm->_height : video->decoder->getHeight(), 0); } - if (!_vm->_draw->_spritesArray[properties.sprite]) { + if (!_vm->_draw->_spritesArray[properties.sprite] && + (properties.sprite != Draw::kFrontSurface) && + (properties.sprite != Draw::kBackSurface)) { properties.sprite = -1; video->surface.reset(); video->decoder->setSurfaceMemory(); properties.x = properties.y = 0; } else { video->surface = _vm->_draw->_spritesArray[properties.sprite]; + if (properties.sprite == Draw::kFrontSurface) + video->surface = _vm->_draw->_frontSurface; + if (properties.sprite == Draw::kBackSurface) + video->surface = _vm->_draw->_backSurface; + video->decoder->setSurfaceMemory(video->surface->getData(), video->surface->getWidth(), video->surface->getHeight(), video->surface->getBPP()); |