diff options
Diffstat (limited to 'engines/neverhood/smackerplayer.cpp')
-rw-r--r-- | engines/neverhood/smackerplayer.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/engines/neverhood/smackerplayer.cpp b/engines/neverhood/smackerplayer.cpp index 39f49cb6e7..0ebec5ee9f 100644 --- a/engines/neverhood/smackerplayer.cpp +++ b/engines/neverhood/smackerplayer.cpp @@ -170,10 +170,9 @@ void SmackerPlayer::update() { _dirtyFlag = false; } +#if 0 if (!_smackerDecoder->endOfVideo()) { - updateFrame(); - if (_smackerDecoder->endOfVideo() && !_keepLastFrame) { // Inform the scene about the end of the video playback if (_scene) { @@ -187,8 +186,23 @@ void SmackerPlayer::update() { } _flag2 = false; } - } +#endif + + if (!_smackerDecoder->endOfVideo()) { + updateFrame(); + } else if (!_keepLastFrame) { + // Inform the scene about the end of the video playback + if (_scene) { + _scene->sendMessage(0x3002, 0, this); + } + _flag2 = true; + } else { + rewind(); + updateFrame(); + _flag2 = false; + } + } void SmackerPlayer::updateFrame() { |