aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2003-07-29 12:13:39 +0000
committerTravis Howell2003-07-29 12:13:39 +0000
commit11aa36ff90be9c0cee214a7fb2a15f9e97bef918 (patch)
tree84d7b526096762e05d7a50fcbb19ddd71d65721c /scumm
parentbbbebd9d14c7360dbe250b5e28e1b6505385f7d5 (diff)
downloadscummvm-rg350-11aa36ff90be9c0cee214a7fb2a15f9e97bef918.tar.gz
scummvm-rg350-11aa36ff90be9c0cee214a7fb2a15f9e97bef918.tar.bz2
scummvm-rg350-11aa36ff90be9c0cee214a7fb2a15f9e97bef918.zip
Add option for the demo included in Maniac Mansion (Classic version)
svn-id: r9279
Diffstat (limited to 'scumm')
-rw-r--r--scumm/scumm.h1
-rw-r--r--scumm/scummvm.cpp7
2 files changed, 7 insertions, 1 deletions
diff --git a/scumm/scumm.h b/scumm/scumm.h
index 9ef37e1658..d4b7c6d2c5 100644
--- a/scumm/scumm.h
+++ b/scumm/scumm.h
@@ -1065,6 +1065,7 @@ protected:
byte _charsetBuffer[512];
public:
+ bool _demo_mode;
bool _noSubtitles; // Whether to skip all subtitles
bool _confirmExit;
protected:
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp
index e6572f3497..caab9e2aff 100644
--- a/scumm/scummvm.cpp
+++ b/scumm/scummvm.cpp
@@ -393,6 +393,7 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
memset(_charsetData, 0, sizeof(_charsetData));
_charsetBufPos = 0;
memset(_charsetBuffer, 0, sizeof(_charsetBuffer));
+ _demo_mode = false;
_noSubtitles = false;
_confirmExit = false;
_numInMsgStack = 0;
@@ -545,6 +546,7 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
_version = detector->_game.version;
setFeatures(detector->_game.features);
+ _demo_mode = detector->_demo_mode;
_noSubtitles = detector->_noSubtitles;
_confirmExit = detector->_confirmExit;
_defaultTalkDelay = detector->_talkSpeed;
@@ -826,7 +828,10 @@ void Scumm::launch() {
// If requested, load a save game instead of running the boot script
if (_saveLoadFlag != 2 || !loadState(_saveLoadSlot, _saveLoadCompatible)) {
- runScript(1, 0, 0, &_bootParam);
+ if (_gameId == GID_MANIAC && _demo_mode)
+ runScript(9, 0, 0, &_bootParam);
+ else
+ runScript(1, 0, 0, &_bootParam);
}
_saveLoadFlag = 0;
}