diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/titanic/game_state.h | 3 | ||||
-rw-r--r-- | engines/titanic/support/movie.cpp | 7 |
2 files changed, 5 insertions, 5 deletions
diff --git a/engines/titanic/game_state.h b/engines/titanic/game_state.h index 9ccf7b29a6..70d47b55c1 100644 --- a/engines/titanic/game_state.h +++ b/engines/titanic/game_state.h @@ -35,8 +35,7 @@ class CGameManager; enum GameStateMode { GSMODE_NONE = 0, GSMODE_INTERACTIVE = 1, GSMODE_CUTSCENE = 2, - GSMODE_3 = 3, GSMODE_4 = 4, GSMODE_INSERT_CD = 5, GSMODE_CLIP = 6, - GSMODE_PENDING_LOAD = 7 + GSMODE_3 = 3, GSMODE_4 = 4, GSMODE_INSERT_CD = 5, GSMODE_PENDING_LOAD = 6 }; enum Season { diff --git a/engines/titanic/support/movie.cpp b/engines/titanic/support/movie.cpp index 647b24dda4..e863185f84 100644 --- a/engines/titanic/support/movie.cpp +++ b/engines/titanic/support/movie.cpp @@ -133,13 +133,14 @@ void OSMovie::playCutscene(const Rect &drawRect, uint startFrame, uint endFrame) drawRect.top + (heightLess ? CLIP_HEIGHT_REDUCED : CLIP_HEIGHT) ); - CGameState &gameState = g_vm->_window->_gameManager->_gameState; - gameState.setMode(GSMODE_CLIP); + // Set a new event target whilst the clip plays, so standard scene drawing isn't called + CEventTarget eventTarget; + g_vm->_events->addTarget(&eventTarget); _aviSurface.setFrame(startFrame); _aviSurface.playCutscene(r, startFrame, endFrame); - gameState.setMode(GSMODE_INTERACTIVE); + g_vm->_events->removeTarget(); } void OSMovie::stop() { |