diff options
-rw-r--r-- | scumm/smush/insane.cpp | 11 | ||||
-rw-r--r-- | scumm/smush/smush_player.cpp | 3 |
2 files changed, 12 insertions, 2 deletions
diff --git a/scumm/smush/insane.cpp b/scumm/smush/insane.cpp index 0180a5ae48..f3df622560 100644 --- a/scumm/smush/insane.cpp +++ b/scumm/smush/insane.cpp @@ -57,6 +57,10 @@ static const int scenePropIdx[58] = {0, 12, 14, 18, 20, 22, 24, 26, 28, Insane::Insane(ScummEngine *scumm) { _scumm = scumm; + // Demo has different insane, so disable it now + if (_scumm->_features & GF_DEMO) + return; + initvars(); readFileToMem("roadrash.rip", &_smush_roadrashRip); @@ -1127,6 +1131,10 @@ void Insane::startVideo1(const char *filename, int num, int argC, int frameRate, // blah(); + // Demo has different insane, so disable it now + if (_scumm->_features & GF_DEMO) + return; + _player->insanity(true); _player->play(filename, _scumm->getGameDataPath()); @@ -4463,7 +4471,8 @@ void Insane::escapeKeyHandler(void) { struct fluConf *flu; //if (!_ptrMainLoop) { } // We don't need it - if (!_insaneIsRunning) { + // Demo has different insane, so disable it now + if (!_insaneIsRunning || _scumm->_features & GF_DEMO) { smush_setToFinish(); return; } diff --git a/scumm/smush/smush_player.cpp b/scumm/smush/smush_player.cpp index f73de0cad5..919709aa80 100644 --- a/scumm/smush/smush_player.cpp +++ b/scumm/smush/smush_player.cpp @@ -843,7 +843,8 @@ void SmushPlayer::setupAnim(const char *file, const char *directory) { handleAnimHeader(*sub); if (_insanity) - readString("mineroad.trs", directory); + if(!(_scumm->_features & GF_DEMO)) + readString("mineroad.trs", directory); else readString(file, directory); |