aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actor.cpp8
-rw-r--r--gfx.cpp2
-rw-r--r--object.cpp17
3 files changed, 7 insertions, 20 deletions
diff --git a/actor.cpp b/actor.cpp
index 9b731e27a8..30ce903614 100644
--- a/actor.cpp
+++ b/actor.cpp
@@ -745,8 +745,7 @@ void Scumm::startWalkAnim(Actor * a, int cmd, int angle)
case 3: /* stop walk */
turnToDirection(a, angle);
startAnimActor(a, a->standFrame);
- break;
- }
+ break; }
}
}
@@ -910,6 +909,11 @@ void Scumm::drawActorCostume(Actor * a)
if (a == NULL || !a->needRedraw)
return;
+
+ if (g_scumm->getClass(a->number, 20))
+ a->mask = 0;
+ else if (g_scumm->getClass(a->number, 21))
+ a->forceClip = 1;
a->needRedraw = false;
diff --git a/gfx.cpp b/gfx.cpp
index 2ff1afda30..7e6d8d28be 100644
--- a/gfx.cpp
+++ b/gfx.cpp
@@ -2232,7 +2232,7 @@ void Scumm::setCursorHotspot2(int x, int y)
byte Scumm::isMaskActiveAt(int l, int t, int r, int b, byte *mem)
{
int w, h, i;
-
+
l >>= 3;
if (l < 0)
l = 0;
diff --git a/object.cpp b/object.cpp
index 742e38a50a..9339b74001 100644
--- a/object.cpp
+++ b/object.cpp
@@ -49,23 +49,6 @@ void Scumm::putClass(int obj, int cls, bool set)
cls = 24;
}
- if (_features & GF_SMALL_HEADER) {
- if (cls == 21 )
- {
- Actor *a;
- a=derefActor(obj);
- a->forceClip=1;
- return;
- }
- if (cls == 20 )
- {
- Actor *a;
- a=derefActor(obj);
- a->mask=0;
- return;
- }
- }
-
if (set)
_classData[obj] |= (1 << (cls - 1));
else