aboutsummaryrefslogtreecommitdiff
path: root/engines/prince
diff options
context:
space:
mode:
authorlukaslw2014-07-02 02:22:55 +0200
committerlukaslw2014-07-02 02:22:55 +0200
commit8378d9287192390ad60a0a9bfff7fbdcab6c452b (patch)
treee9354737bf8c19c84f751421c474954829453621 /engines/prince
parentad8df751c35364d7de23a7d1b4fdb4d9ad678cd5 (diff)
downloadscummvm-rg350-8378d9287192390ad60a0a9bfff7fbdcab6c452b.tar.gz
scummvm-rg350-8378d9287192390ad60a0a9bfff7fbdcab6c452b.tar.bz2
scummvm-rg350-8378d9287192390ad60a0a9bfff7fbdcab6c452b.zip
PRINCE: O_CHANGEFRAMES(), showNormAnims() update
Diffstat (limited to 'engines/prince')
-rw-r--r--engines/prince/prince.cpp2
-rw-r--r--engines/prince/script.cpp5
2 files changed, 5 insertions, 2 deletions
diff --git a/engines/prince/prince.cpp b/engines/prince/prince.cpp
index d876f8aa53..2d59f95a6b 100644
--- a/engines/prince/prince.cpp
+++ b/engines/prince/prince.cpp
@@ -1256,7 +1256,7 @@ void PrinceEngine::showNormAnims() {
Anim &anim = _normAnimList[i];
if (anim._animData != nullptr) {
if (!anim._state) {
- if (anim._frame == anim._lastFrame) {
+ if (anim._frame == anim._lastFrame - 1) { // TODO - check if correct
if (anim._loopType) {
if (anim._loopType == 1) {
anim._frame = anim._loopFrame;
diff --git a/engines/prince/script.cpp b/engines/prince/script.cpp
index 37f6724b36..38179421c3 100644
--- a/engines/prince/script.cpp
+++ b/engines/prince/script.cpp
@@ -1160,7 +1160,10 @@ void Interpreter::O_CHANGEFRAMES() {
uint16 frame = readScriptFlagValue();
uint16 lastFrame = readScriptFlagValue();
uint16 loopFrame = readScriptFlagValue();
- debugInterpreter("O_CHANGFRAMES anim %d, fr1 %d, fr2 %d, fr3 %d", anim, frame, lastFrame, loopFrame);
+ _vm->_normAnimList[anim]._frame = frame;
+ _vm->_normAnimList[anim]._lastFrame = lastFrame;
+ _vm->_normAnimList[anim]._loopFrame = loopFrame;
+ debugInterpreter("O_CHANGFRAMES anim %d, frame %d, lastFrame %d, loopFrame %d", anim, frame, lastFrame, loopFrame);
}
void Interpreter::O_CHANGEBACKFRAMES() {