diff options
author | Paul Gilbert | 2017-07-01 17:40:51 -0400 |
---|---|---|
committer | Paul Gilbert | 2017-07-01 17:40:51 -0400 |
commit | 72423657e2a4f46d35726a5bb4371c4d1ec4b1bc (patch) | |
tree | d5a848ee1448deb88f3ccd8946a0df4f1e63fd0e /engines | |
parent | 372610a907a0498b8dc0a7a85f205a2121fe77c6 (diff) | |
download | scummvm-rg350-72423657e2a4f46d35726a5bb4371c4d1ec4b1bc.tar.gz scummvm-rg350-72423657e2a4f46d35726a5bb4371c4d1ec4b1bc.tar.bz2 scummvm-rg350-72423657e2a4f46d35726a5bb4371c4d1ec4b1bc.zip |
TITANIC: Fix service lift indicator when going down floors
Diffstat (limited to 'engines')
-rw-r--r-- | engines/titanic/game/service_elevator_window.cpp | 4 | ||||
-rw-r--r-- | engines/titanic/support/avi_surface.cpp | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/engines/titanic/game/service_elevator_window.cpp b/engines/titanic/game/service_elevator_window.cpp index 887fd3d086..84c4d7e8de 100644 --- a/engines/titanic/game/service_elevator_window.cpp +++ b/engines/titanic/game/service_elevator_window.cpp @@ -70,16 +70,16 @@ bool CServiceElevatorWindow::ServiceElevatorFloorChangeMsg(CServiceElevatorFloor int count = clip->_endFrame - clip->_startFrame; int startFrame = clip->_startFrame + count * FACTORS[msg->_startFloor] / 100; int endFrame = clip->_startFrame + count * FACTORS[msg->_endFloor] / 100; + double rate = (startFrame < endFrame ? 1.0 : -1.0) * count / fps; + setMovieFrameRate(rate); if (_notifyFlag) { // Service elevator indicator playMovie(startFrame, endFrame, MOVIE_NOTIFY_OBJECT); - setMovieFrameRate(rate); } else { // Background outside elevator playMovie(startFrame, endFrame, 0); - setMovieFrameRate(rate); if (_intoSpace) playClip("Into Space"); diff --git a/engines/titanic/support/avi_surface.cpp b/engines/titanic/support/avi_surface.cpp index 7bfd614109..810c0ec5db 100644 --- a/engines/titanic/support/avi_surface.cpp +++ b/engines/titanic/support/avi_surface.cpp @@ -149,6 +149,7 @@ bool AVISurface::startAtFrame(int frameNumber) { _decoder->start(); // Seek to the starting frame + _currentFrame = -1; seekToFrame(frameNumber); // If we're in reverse playback, set the decoder to play in reverse |