#5895 closed defect (fixed)
SCUMM: MM - F4 Restart after blowing up house does not work
Reported by: | SF/tetsuo55 | Owned by: | Kirben |
---|---|---|---|
Priority: | normal | Component: | Engine: SCUMM |
Version: | Keywords: | ||
Cc: | Game: | Maniac Mansion |
Description
Expected behaviour: The screen says "Press F4 to play again", Pressing F4 should let me play again What happens instead: The game does not respond to the F4 button press How to reproduce: Go into the house, walk up the stairs, use the keypad next to the door, press the top left button 4 times, after about a minute the house will blow up and you will get the screen telling you to press F4
This was tested on Ubuntu 10.04 using: ScummVM 1.4.0pre35-g9bc0f70 (Nov 1 2011 04:35:13) Features compiled in: Vorbis FLAC MP3 RGB zLib
Ticket imported from: #3433879. Ticket imported from: bugs/5895.
Attachments (1)
Change History (8)
by , 13 years ago
Attachment: | scummvmbug.png added |
---|
comment:1 by , 13 years ago
Summary: | Pressing F4 after blowing up house does not work → SCUMM: MM - F4 Restart after blowing up house does not work |
---|
comment:2 by , 13 years ago
Confirmed with ScummVM 1.5.0git338-g6c23f78-dirty (Nov 5 2011 21:24:34).
F4 does not work for this... though ESC does. Not sure if this was hardcoded in the original interpreter?
comment:3 by , 13 years ago
If this wasn't hardcoded, then there may be a missing case in the function "void ScummEngine_v0::processInput()" found in engines/scumm/input.cpp ...
comment:4 by , 13 years ago
Owner: | set to |
---|
comment:5 by , 13 years ago
With significant help from Kirben, have traced this down to void ScummEngine::processKeyboard(Common::KeyState lastKeyHit) in engines/scumm/input.cpp. Specifically this was due to the hard coding of ESC for Cutscene skip button, rather than using the value of VAR_CUTSCENEEXIT_KEY (at line 535 of input.cpp).
This minor regression was introduced by: commit 4297ccc96481872e9b47428c5ed36d6db0a450de Author: Max Horn <max@quendi.de> Date: Sat Jun 23 16:02:50 2007 +0000
Revised SCUMM's input code. We now fix the keys F5, '.', space, escape for mainmenu, talkstop, pause, cutsceneExit; this simplifies and clarifies the code, and ensures consistent game behavior
svn-id: r27672
Kirben will look at fixing this "by spliting code to specific versions again where required, so we don't go against script changes to specific keys."
comment:6 by , 13 years ago
This problem effected several game ports, which used different keys for skipping cutscenes: The Commodore 64 port of Zak McKracken uses RETURN The Commodore 64 port of Maniac Mansion uses F7 The NES ports of Maniac Mansion uses B Other ports of Maniac Mansion use F4
The exact keys used are displayed by the scripts, when dying or complete these games.
I fixed the problem in ScummVM by adding directly support for the exact keys used in each game port mentioned. Since the function keys were mapped differently (as 1 - 8) in the scripts of these games, compared to the expected values in ScummVM.
comment:7 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
screenshot of the screen