diff options
author | Robert Crossfield | 2014-12-08 19:04:17 +1100 |
---|---|---|
committer | Robert Crossfield | 2014-12-08 19:12:27 +1100 |
commit | 962c8b4524f46bbc2394d7a80972db0a474221a3 (patch) | |
tree | 516bf897b99b7da412c61d510359143df93c351f /engines/scumm/input.cpp | |
parent | d83438225e40f513a43b2c9b5d9b71a3afbc375e (diff) | |
download | scummvm-rg350-962c8b4524f46bbc2394d7a80972db0a474221a3.tar.gz scummvm-rg350-962c8b4524f46bbc2394d7a80972db0a474221a3.tar.bz2 scummvm-rg350-962c8b4524f46bbc2394d7a80972db0a474221a3.zip |
SCUMM: Maniac V0 Demo: Allow F7 to restart, Add handler for opcode 0x6e (o_screenPrepare)
Diffstat (limited to 'engines/scumm/input.cpp')
-rw-r--r-- | engines/scumm/input.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/engines/scumm/input.cpp b/engines/scumm/input.cpp index 824dfec144..86048af57c 100644 --- a/engines/scumm/input.cpp +++ b/engines/scumm/input.cpp @@ -452,8 +452,16 @@ void ScummEngine_v2::processKeyboard(Common::KeyState lastKeyHit) { lastKeyHit = Common::KeyState(Common::KEYCODE_ESCAPE); // F7 is used to skip cutscenes in the Commodote 64 version of Maniac Mansion } else if (_game.id == GID_MANIAC &&_game.platform == Common::kPlatformC64) { - if (lastKeyHit.keycode == Common::KEYCODE_F7 && lastKeyHit.hasFlags(0)) - lastKeyHit = Common::KeyState(Common::KEYCODE_ESCAPE); + // Demo always F7 to be pressed to restart + if (_game.features & GF_DEMO) { + if (_roomResource != 0x2D && lastKeyHit.keycode == Common::KEYCODE_F7 && lastKeyHit.hasFlags(0)) { + restart(); + return; + } + } else { + if (lastKeyHit.keycode == Common::KEYCODE_F7 && lastKeyHit.hasFlags(0)) + lastKeyHit = Common::KeyState(Common::KEYCODE_ESCAPE); + } // 'B' is used to skip cutscenes in the NES version of Maniac Mansion } else if (_game.id == GID_MANIAC &&_game.platform == Common::kPlatformNES) { if (lastKeyHit.keycode == Common::KEYCODE_b && lastKeyHit.hasFlags(Common::KBD_SHIFT)) |