diff options
author | James Brown | 2002-09-17 12:52:53 +0000 |
---|---|---|
committer | James Brown | 2002-09-17 12:52:53 +0000 |
commit | 978e879009e205f32b4579f8a77061a9619bc2ea (patch) | |
tree | dbb7357ea7d03a6da438ad1504b2bc55c2fec5a2 /scumm/actor.cpp | |
parent | ab2eb4d928ff2dae94cce3bcb228c504964a9bf7 (diff) | |
download | scummvm-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.cpp | 14 |
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; } } } |