diff options
-rw-r--r-- | engines/access/scripts.cpp | 9 | ||||
-rw-r--r-- | engines/access/scripts.h | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/engines/access/scripts.cpp b/engines/access/scripts.cpp index 9f919484ef..89c8a4d0e6 100644 --- a/engines/access/scripts.cpp +++ b/engines/access/scripts.cpp @@ -127,7 +127,7 @@ void Scripts::executeCommand(int commandIndex) { &Scripts::cmdSpecial, &Scripts::cmdSpecial, &Scripts::cmdSpecial, &Scripts::cmdSetCycle, &Scripts::cmdCycle, &Scripts::cmdCharSpeak, &Scripts::cmdTexSpeak, &Scripts::cmdTexChoice, &Scripts::cmdWait, - &Scripts::cmdSetConPos, &Scripts::CMDCHECKVFRAME, &Scripts::cmdJumpChoice, + &Scripts::cmdSetConPos, &Scripts::cmdCheckVFrame, &Scripts::cmdJumpChoice, &Scripts::cmdReturnChoice, &Scripts::cmdClearBlock, &Scripts::cmdLoadSound, &Scripts::cmdFreeSound, &Scripts::cmdSetVideoSound, &Scripts::cmdPlayVideoSound, &Scripts::CMDPUSHLOCATION, &Scripts::CMDPUSHLOCATION, &Scripts::CMDPUSHLOCATION, @@ -691,7 +691,12 @@ void Scripts::cmdSetConPos() { _texsOrg = Common::Point(x, y); } -void Scripts::CMDCHECKVFRAME() { error("TODO CMDCHECKVFRAME"); } +void Scripts::cmdCheckVFrame() { + if (_vm->_video->_videoFrame == _data->readSint16LE()) + cmdGoto(); + else + _data->skip(2); +} void Scripts::cmdJumpChoice() { int val = (_data->readUint16LE() & 0xFF); diff --git a/engines/access/scripts.h b/engines/access/scripts.h index eaac996d4d..2b527a855a 100644 --- a/engines/access/scripts.h +++ b/engines/access/scripts.h @@ -109,7 +109,7 @@ protected: void cmdTexChoice(); void cmdWait(); void cmdSetConPos(); - void CMDCHECKVFRAME(); + void cmdCheckVFrame(); void cmdJumpChoice(); void cmdReturnChoice(); void cmdClearBlock(); |