aboutsummaryrefslogtreecommitdiff
path: root/scumm/smush
diff options
context:
space:
mode:
authorMax Horn2002-10-08 00:29:32 +0000
committerMax Horn2002-10-08 00:29:32 +0000
commitb409ef66089dbc8d42c97c6721ace798b3a1feab (patch)
tree2d22e45d76b4f18c3256b1f12b662f6a82659d03 /scumm/smush
parentbbc3ed3e8f5cd85f6e34f414533e0bc50a662155 (diff)
downloadscummvm-rg350-b409ef66089dbc8d42c97c6721ace798b3a1feab.tar.gz
scummvm-rg350-b409ef66089dbc8d42c97c6721ace798b3a1feab.tar.bz2
scummvm-rg350-b409ef66089dbc8d42c97c6721ace798b3a1feab.zip
allow user to load savegames while Smush movies are playing; cleanup
svn-id: r5106
Diffstat (limited to 'scumm/smush')
-rw-r--r--scumm/smush/scumm_renderer.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/scumm/smush/scumm_renderer.cpp b/scumm/smush/scumm_renderer.cpp
index 9b2ec30426..729032a66e 100644
--- a/scumm/smush/scumm_renderer.cpp
+++ b/scumm/smush/scumm_renderer.cpp
@@ -29,6 +29,7 @@
#include "scumm/sound.h"
#include "scumm/actor.h"
+
class ScummMixer : public Mixer {
private:
SoundMixer * _mixer; //!< pointer to the SoundMixer instance
@@ -216,7 +217,7 @@ Mixer * ScummRenderer::getMixer() {
}
ScummRenderer::~ScummRenderer() {
- _scumm->_insaneState = 0;
+ _scumm->_insaneState = false;
_scumm->exitCutscene();
if(_smixer) {
_scumm->_timer->releaseProcedure(&smush_handler);
@@ -240,8 +241,8 @@ bool ScummRenderer::wait(int32 ms) {
bool ScummRenderer::startDecode(const char * fname, int32 version, int32 nbframes) {
_scumm->_sound->pauseBundleMusic(true);
- _scumm->videoFinished = 0;
- _scumm->_insaneState = 1;
+ _scumm->_videoFinished = false;
+ _scumm->_insaneState = true;
return true;
}
@@ -274,7 +275,8 @@ void ScummRenderer::save(int32 frame) {
bool ScummRenderer::prematureClose() {
- return _scumm->videoFinished ? true : false;
+ return _scumm->_videoFinished || _scumm->_saveLoadFlag;
+
}
bool ScummRenderer::update() {