aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/videoplayer.cpp
diff options
context:
space:
mode:
authorSven Hesse2011-01-20 10:20:57 +0000
committerSven Hesse2011-01-20 10:20:57 +0000
commit6b85f809d9fcb2e7140944b5a8be14373b8fc081 (patch)
tree310755730b08359c0038b7a837091fa5df71b6c8 /engines/gob/videoplayer.cpp
parentdd3894a44248e2c5b2c646b4cc1d1353442b7fbb (diff)
downloadscummvm-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.cpp9
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());