aboutsummaryrefslogtreecommitdiff
path: root/engines/neverhood/smackerplayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/neverhood/smackerplayer.cpp')
-rw-r--r--engines/neverhood/smackerplayer.cpp20
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() {