aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/riven.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mohawk/riven.cpp')
-rw-r--r--engines/mohawk/riven.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/mohawk/riven.cpp b/engines/mohawk/riven.cpp
index 2a651cf0de..f8b302b8d9 100644
--- a/engines/mohawk/riven.cpp
+++ b/engines/mohawk/riven.cpp
@@ -60,6 +60,7 @@ MohawkEngine_Riven::MohawkEngine_Riven(OSystem *syst, const MohawkGameDescriptio
_extrasFile = nullptr;
_stack = nullptr;
_gfx = nullptr;
+ _video = nullptr;
_sound = nullptr;
_rnd = nullptr;
_scriptMan = nullptr;
@@ -91,6 +92,7 @@ MohawkEngine_Riven::~MohawkEngine_Riven() {
delete _card;
delete _stack;
delete _sound;
+ delete _video;
delete _gfx;
delete _console;
delete _extrasFile;
@@ -116,6 +118,7 @@ Common::Error MohawkEngine_Riven::run() {
SearchMan.add("arcriven.z", &_installerArchive, 0, false);
_gfx = new RivenGraphics(this);
+ _video = new VideoManager(this);
_sound = new RivenSoundManager(this);
_console = new RivenConsole(this);
_saveLoad = new RivenSaveLoad(this, _saveFileMan);
@@ -283,6 +286,17 @@ void MohawkEngine_Riven::doFrame() {
_system->delayMillis(10);
}
+void MohawkEngine_Riven::pauseEngineIntern(bool pause) {
+ MohawkEngine::pauseEngineIntern(pause);
+
+ if (pause) {
+ _video->pauseVideos();
+ } else {
+ _video->resumeVideos();
+ _system->updateScreen();
+ }
+}
+
// Stack/Card-Related Functions
void MohawkEngine_Riven::changeToStack(uint16 n) {