aboutsummaryrefslogtreecommitdiff
path: root/engines/gob
diff options
context:
space:
mode:
authorSven Hesse2008-05-17 04:07:16 +0000
committerSven Hesse2008-05-17 04:07:16 +0000
commit5127f1a8f12f409f5ab973fe821981d4fb25b9ab (patch)
tree74f26d4c9fd4019ef5d1fd23e8a1e6e05328e9eb /engines/gob
parent9ce0b621085419093fbfc03b6e3e2e6a0369460e (diff)
downloadscummvm-rg350-5127f1a8f12f409f5ab973fe821981d4fb25b9ab.tar.gz
scummvm-rg350-5127f1a8f12f409f5ab973fe821981d4fb25b9ab.tar.bz2
scummvm-rg350-5127f1a8f12f409f5ab973fe821981d4fb25b9ab.zip
Fixing the "object videos not minding drawing order / limits" glitch in Woodruff
svn-id: r32146
Diffstat (limited to 'engines/gob')
-rw-r--r--engines/gob/mult_v2.cpp2
-rw-r--r--engines/gob/scenery.cpp6
2 files changed, 4 insertions, 4 deletions
diff --git a/engines/gob/mult_v2.cpp b/engines/gob/mult_v2.cpp
index 8a299649c7..ebbcf407c6 100644
--- a/engines/gob/mult_v2.cpp
+++ b/engines/gob/mult_v2.cpp
@@ -755,7 +755,7 @@ void Mult_v2::newCycleAnim(Mult_Object &animObj) {
animData.frame = 0;
if ((animData.animation < 0) && (animObj.videoSlot > 0)) {
_vm->_vidPlayer->slotClose(animObj.videoSlot - 1);
- animObj.videoSlot = 0;
+ animObj.videoSlot = 0;
}
break;
diff --git a/engines/gob/scenery.cpp b/engines/gob/scenery.cpp
index 25df5b7e71..fa7944c203 100644
--- a/engines/gob/scenery.cpp
+++ b/engines/gob/scenery.cpp
@@ -623,8 +623,8 @@ void Scenery::updateAnim(int16 layer, int16 frame, int16 animation, int16 flags,
Mult::Mult_Object &obj = _vm->_mult->_objects[-animation - 1];
- if (!_vm->_vidPlayer->slotIsOpen(obj.videoSlot - 1)) {
- _toRedrawLeft = -1234;
+ if ((obj.videoSlot == 0) || !_vm->_vidPlayer->slotIsOpen(obj.videoSlot - 1)) {
+ _toRedrawLeft = -12345;
return;
}
@@ -736,7 +736,7 @@ void Scenery::updateAnim(int16 layer, int16 frame, int16 animation, int16 flags,
}
- if (flags & 4) {
+ if (!(flags & 4)) {
_animLeft = _toRedrawLeft = left;
_animTop = _toRedrawTop = top;
_animRight = _toRedrawRight = right;