[Scummvm-git-logs] scummvm master -> 5f87731465257369e3f21129d267ff2294651e69

athrxx noreply at scummvm.org
Thu Apr 21 19:14:03 UTC 2022


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
5f87731465 SCUMM: (MM/V2) - fix regression from 2adc35e


Commit: 5f87731465257369e3f21129d267ff2294651e69
    https://github.com/scummvm/scummvm/commit/5f87731465257369e3f21129d267ff2294651e69
Author: athrxx (athrxx at scummvm.org)
Date: 2022-04-21T21:13:09+02:00

Commit Message:
SCUMM: (MM/V2) - fix regression from 2adc35e

Changed paths:
    engines/scumm/actor.cpp


diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp
index 6b2e5dc9773..e0c3a6fb1f1 100644
--- a/engines/scumm/actor.cpp
+++ b/engines/scumm/actor.cpp
@@ -1521,10 +1521,15 @@ void Actor::setDirection(int direction) {
 			// For versions 1 to 6 we need to store the direction info in the frame array (like
 			// the original interpreters do). I haven't found any signs that v7/8 require it, though.
 			// I haven't checked HE, but since it uses the same AKOS costumes as v7/8 I leave that
-			// as it is...
-			if ((vald & 3) == newDirToOldDir(direction))
-				continue;
+			// as it is...	
+			if ((vald & 3) == newDirToOldDir(direction)) {
+				// v1/2 skip the frame only if everything is equal...
+				if (_vm->_game.version > 2 || (vald >> 2) == _frame)
+					continue;
+			}
 			vald >>= 2;
+			if (_vm->_game.version < 3)
+				_frame = vald;
 		}
 		_vm->_costumeLoader->costumeDecodeData(this, vald, (_vm->_game.version <= 2) ? 0xFFFF : aMask);
 	}
@@ -2064,7 +2069,6 @@ void Actor::showActor() {
 		}
 	}
 
-	stopActorMoving();
 	_visible = true;
 	_needRedraw = true;
 }




More information about the Scummvm-git-logs mailing list