aboutsummaryrefslogtreecommitdiff
path: root/scumm/actor.cpp
diff options
context:
space:
mode:
authorMax Horn2003-01-05 22:38:44 +0000
committerMax Horn2003-01-05 22:38:44 +0000
commita0d4234e8945464da1a125c954f1f7e7ff2c40a3 (patch)
treea0fd272d35bc8354c582f8359dd119fddcc4e9a9 /scumm/actor.cpp
parentca8ddd6c6e8a0099c2e1930f81a824f726e29532 (diff)
downloadscummvm-rg350-a0d4234e8945464da1a125c954f1f7e7ff2c40a3.tar.gz
scummvm-rg350-a0d4234e8945464da1a125c954f1f7e7ff2c40a3.tar.bz2
scummvm-rg350-a0d4234e8945464da1a125c954f1f7e7ff2c40a3.zip
fix redraw bug in the Dig (when Cmdr Low stands in front of the sparks in the nexus); changed startAnimActor slightly (not fully sure if this is now right or if the previous code was right <sigh>
svn-id: r6342
Diffstat (limited to 'scumm/actor.cpp')
-rw-r--r--scumm/actor.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp
index 746e26fe81..e57af33565 100644
--- a/scumm/actor.cpp
+++ b/scumm/actor.cpp
@@ -415,7 +415,6 @@ void Actor::setupActorScale()
void Actor::startAnimActor(int f)
{
- frame = f;
if (_vm->_features & GF_NEW_COSTUMES) {
switch (f) {
case 1001:
@@ -435,6 +434,8 @@ void Actor::startAnimActor(int f)
break;
}
+ frame = f;
+
if (costume != 0) {
animProgress = 0;
needRedraw = true;
@@ -464,6 +465,7 @@ void Actor::startAnimActor(int f)
}
assert(f != 0x3E);
+ frame = f;
// FIXME: This is a hack to fix decapitation, which somehow occurs only on
// the standFrame (CHORE mode 3). We hack around this by simply using the
@@ -1024,7 +1026,10 @@ void Actor::drawActorCostume()
ar.draw_top = top = 0x7fffffff;
ar.draw_bottom = bottom = 0;
- ar.drawCostume();
+ if (ar.drawCostume()) {
+ needBgReset = true;
+ needRedraw = true;
+ }
top = ar.draw_top;
bottom = ar.draw_bottom;
}