diff options
author | Kirben | 2014-12-08 19:26:39 +1100 |
---|---|---|
committer | Kirben | 2014-12-08 19:26:39 +1100 |
commit | 6e24e7df3b9c39b03d1652bdf34f275d7ed8c1fc (patch) | |
tree | 27e8f9f67af3ab3d59dd49a8f3589337c991d4bd /engines/scumm/script_v0.cpp | |
parent | ecb1979245fb6695a68286a59f5eaf2c3677b579 (diff) | |
parent | 962c8b4524f46bbc2394d7a80972db0a474221a3 (diff) | |
download | scummvm-rg350-6e24e7df3b9c39b03d1652bdf34f275d7ed8c1fc.tar.gz scummvm-rg350-6e24e7df3b9c39b03d1652bdf34f275d7ed8c1fc.tar.bz2 scummvm-rg350-6e24e7df3b9c39b03d1652bdf34f275d7ed8c1fc.zip |
Merge pull request #546 from segrax/V0_Demo
SCUMM: Maniac V0: Add support for D64 Demo Disk, Cleanup duplicate 'Talk...
Diffstat (limited to 'engines/scumm/script_v0.cpp')
-rw-r--r-- | engines/scumm/script_v0.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/engines/scumm/script_v0.cpp b/engines/scumm/script_v0.cpp index 90291535fd..609cbd1e89 100644 --- a/engines/scumm/script_v0.cpp +++ b/engines/scumm/script_v0.cpp @@ -172,7 +172,7 @@ void ScummEngine_v0::setupOpcodes() { /* 6C */ OPCODE(0x6c, o_stopCurrentScript); OPCODE(0x6d, o2_putActorInRoom); - OPCODE(0x6e, o2_dummy); + OPCODE(0x6e, o_screenPrepare); OPCODE(0x6f, o2_ifState08); /* 70 */ OPCODE(0x70, o_lights); @@ -633,12 +633,21 @@ void ScummEngine_v0::setMode(byte mode) { switch (_currentMode) { case kModeCutscene: + if (_game.features & GF_DEMO) { + if (VAR(11) != 0) + _drawDemo = true; + } _redrawSentenceLine = false; // Note: do not change freeze state here state = USERSTATE_SET_IFACE | USERSTATE_SET_CURSOR; + break; case kModeKeypad: + if (_game.features & GF_DEMO) { + if (VAR(11) != 0) + _drawDemo = true; + } _redrawSentenceLine = false; state = USERSTATE_SET_IFACE | USERSTATE_SET_CURSOR | USERSTATE_CURSOR_ON | @@ -646,6 +655,12 @@ void ScummEngine_v0::setMode(byte mode) { break; case kModeNormal: case kModeNoNewKid: + if (_game.features & GF_DEMO) { + resetVerbs(); + _activeVerb = kVerbWalkTo; + _redrawSentenceLine = true; + _drawDemo = false; + } state = USERSTATE_SET_IFACE | USERSTATE_IFACE_ALL | USERSTATE_SET_CURSOR | USERSTATE_CURSOR_ON | USERSTATE_SET_FREEZE; @@ -967,6 +982,10 @@ void ScummEngine_v0::o_setOwnerOf() { setOwnerOf(obj, owner); } +void ScummEngine_v0::o_screenPrepare() { + +} + void ScummEngine_v0::resetSentence() { _activeVerb = kVerbWalkTo; _activeObject = 0; |