aboutsummaryrefslogtreecommitdiff
path: root/scumm/actor.cpp
diff options
context:
space:
mode:
authorJames Brown2002-09-17 12:52:53 +0000
committerJames Brown2002-09-17 12:52:53 +0000
commit978e879009e205f32b4579f8a77061a9619bc2ea (patch)
treedbb7357ea7d03a6da438ad1504b2bc55c2fec5a2 /scumm/actor.cpp
parentab2eb4d928ff2dae94cce3bcb228c504964a9bf7 (diff)
downloadscummvm-rg350-978e879009e205f32b4579f8a77061a9619bc2ea.tar.gz
scummvm-rg350-978e879009e205f32b4579f8a77061a9619bc2ea.tar.bz2
scummvm-rg350-978e879009e205f32b4579f8a77061a9619bc2ea.zip
Fix newgui crash, and commit patch 600645: Loom flashlight fix
svn-id: r4958
Diffstat (limited to 'scumm/actor.cpp')
-rw-r--r--scumm/actor.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp
index 6fad8ae9c1..bd94f91d83 100644
--- a/scumm/actor.cpp
+++ b/scumm/actor.cpp
@@ -966,7 +966,7 @@ void Actor::animateCostume()
}
}
-void Scumm::setActorRedrawFlags()
+void Scumm::setActorRedrawFlags(bool fg, bool bg)
{
int i, j;
uint32 bits;
@@ -974,8 +974,10 @@ void Scumm::setActorRedrawFlags()
if (_fullRedraw) {
for (j = 0; j < NUM_ACTORS; j++) {
Actor *a = derefActor(j);
- a->needRedraw = true;
- a->needBgReset = true;
+ if (fg)
+ a->needRedraw = true;
+ if (bg)
+ a->needBgReset = true;
}
} else {
for (i = 0; i < 40; i++) {
@@ -984,8 +986,10 @@ void Scumm::setActorRedrawFlags()
for (j = 0; j < NUM_ACTORS; j++) {
if ((bits & (1 << j)) && bits != (uint32)(1 << j)) {
Actor *a = derefActor(j);
- a->needRedraw = true;
- a->needBgReset = true;
+ if (fg)
+ a->needRedraw = true;
+ if (bg)
+ a->needBgReset = true;
}
}
}