diff options
Diffstat (limited to 'engines/agi/op_cmd.cpp')
-rw-r--r-- | engines/agi/op_cmd.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/agi/op_cmd.cpp b/engines/agi/op_cmd.cpp index 8ee9958ecd..0e0f49b542 100644 --- a/engines/agi/op_cmd.cpp +++ b/engines/agi/op_cmd.cpp @@ -1495,6 +1495,8 @@ void cmdReverseLoop(AgiGame *state, AgiEngine *vm, uint8 *parameter) { screenObj->flags |= (fDontupdate | fUpdate | fCycling); screenObj->loop_flag = loopFlag; state->_vm->setFlag(screenObj->loop_flag, false); + + vm->cyclerActivated(screenObj); } void cmdReverseLoopV1(AgiGame *state, AgiEngine *vm, uint8 *parameter) { @@ -1520,6 +1522,8 @@ void cmdEndOfLoop(AgiGame *state, AgiEngine *vm, uint8 *parameter) { screenObj->flags |= (fDontupdate | fUpdate | fCycling); screenObj->loop_flag = loopFlag; vm->setFlag(screenObj->loop_flag, false); + + vm->cyclerActivated(screenObj); } void cmdEndOfLoopV1(AgiGame *state, AgiEngine *vm, uint8 *parameter) { @@ -1632,6 +1636,8 @@ void cmdFollowEgo(AgiGame *state, AgiEngine *vm, uint8 *parameter) { vm->setFlag(screenObj->follow_flag, false); screenObj->flags |= fUpdate; } + + vm->motionActivated(screenObj); } void cmdMoveObj(AgiGame *state, AgiEngine *vm, uint8 *parameter) { @@ -1660,6 +1666,8 @@ void cmdMoveObj(AgiGame *state, AgiEngine *vm, uint8 *parameter) { screenObj->flags |= fUpdate; } + vm->motionActivated(screenObj); + if (objectNr == 0) state->playerControl = false; @@ -1688,6 +1696,8 @@ void cmdMoveObjF(AgiGame *state, AgiEngine *vm, uint8 *parameter) { vm->setFlag(screenObj->move_flag, false); screenObj->flags |= fUpdate; + vm->motionActivated(screenObj); + if (objectNr == 0) state->playerControl = false; @@ -1709,6 +1719,8 @@ void cmdWander(AgiGame *state, AgiEngine *vm, uint8 *parameter) { } else { screenObj->flags |= fUpdate; } + + vm->motionActivated(screenObj); } void cmdSetGameID(AgiGame *state, AgiEngine *vm, uint8 *parameter) { |