aboutsummaryrefslogtreecommitdiff
path: root/scumm/actor.cpp
diff options
context:
space:
mode:
authorTravis Howell2003-12-28 12:51:18 +0000
committerTravis Howell2003-12-28 12:51:18 +0000
commit6c3e0134c26947d6a7f53a731ae2a1a5f27ad815 (patch)
tree2e2ff98e67508337f3830de86c2933f2a680e800 /scumm/actor.cpp
parent28199bc8401dbadab9c0d9ab14dcc8559ddc6bbe (diff)
downloadscummvm-rg350-6c3e0134c26947d6a7f53a731ae2a1a5f27ad815.tar.gz
scummvm-rg350-6c3e0134c26947d6a7f53a731ae2a1a5f27ad815.tar.bz2
scummvm-rg350-6c3e0134c26947d6a7f53a731ae2a1a5f27ad815.zip
Putt Putt games use old calculation
svn-id: r11994
Diffstat (limited to 'scumm/actor.cpp')
-rw-r--r--scumm/actor.cpp27
1 files changed, 14 insertions, 13 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp
index 5337939028..7511a009a6 100644
--- a/scumm/actor.cpp
+++ b/scumm/actor.cpp
@@ -416,7 +416,7 @@ void Actor::setupActorScale() {
}
void Actor::startAnimActor(int f) {
- if (_vm->_features & GF_NEW_COSTUMES) {
+ if ((_vm->_features & GF_NEW_COSTUMES) && !(_vm->_features & GF_HUMONGOUS)) {
switch (f) {
case 1001:
f = initFrame;
@@ -434,17 +434,6 @@ void Actor::startAnimActor(int f) {
f = talkStopFrame;
break;
}
-
- frame = f;
-
- if (costume != 0) {
- animProgress = 0;
- needRedraw = true;
- if (f == initFrame)
- cost.reset();
- _vm->akos_decodeData(this, f, (uint) - 1);
- }
-
} else {
switch (f) {
case 0x38:
@@ -463,7 +452,19 @@ void Actor::startAnimActor(int f) {
f = talkStopFrame;
break;
}
-
+ }
+
+ if (_vm->_features & GF_NEW_COSTUMES) {
+ frame = f;
+
+ if (costume != 0) {
+ animProgress = 0;
+ needRedraw = true;
+ if (f == initFrame)
+ cost.reset();
+ _vm->akos_decodeData(this, f, (uint) - 1);
+ }
+ } else {
assert(f != 0x3E);
frame = f;