diff options
author | Filippos Karapetis | 2007-07-09 12:03:53 +0000 |
---|---|---|
committer | Filippos Karapetis | 2007-07-09 12:03:53 +0000 |
commit | e10a6e65155deb86812aae4a89190c652b237f4f (patch) | |
tree | cee75bd46c021c209df2536e4f330ecc98a73cc5 /engines | |
parent | 9782c35eaf4d34a13fae63151ba226d0ed1fd60d (diff) | |
download | scummvm-rg350-e10a6e65155deb86812aae4a89190c652b237f4f.tar.gz scummvm-rg350-e10a6e65155deb86812aae4a89190c652b237f4f.tar.bz2 scummvm-rg350-e10a6e65155deb86812aae4a89190c652b237f4f.zip |
Fix for bug #1746661: "KQ3: Lockup when pressing ESC (Amiga version)"
svn-id: r27989
Diffstat (limited to 'engines')
-rw-r--r-- | engines/agi/agi.h | 3 | ||||
-rw-r--r-- | engines/agi/detection.cpp | 2 | ||||
-rw-r--r-- | engines/agi/keyboard.cpp | 2 | ||||
-rw-r--r-- | engines/agi/menu.cpp | 2 |
4 files changed, 5 insertions, 4 deletions
diff --git a/engines/agi/agi.h b/engines/agi/agi.h index 01db2acb23..825d475314 100644 --- a/engines/agi/agi.h +++ b/engines/agi/agi.h @@ -110,7 +110,8 @@ enum AgiGameFeatures { GF_AGI256_2 = (1 << 3), GF_AGIPAL = (1 << 4), GF_MACGOLDRUSH = (1 << 5), - GF_FANMADE = (1 << 6) + GF_FANMADE = (1 << 6), + GF_FORCEMENUS = (1 << 7) }; enum AgiGameID { diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp index 29b5bb726a..fce6fa733a 100644 --- a/engines/agi/detection.cpp +++ b/engines/agi/detection.cpp @@ -635,7 +635,7 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_KQ3, GType_V2, - 0, + GF_FORCEMENUS, 0x2440, }, diff --git a/engines/agi/keyboard.cpp b/engines/agi/keyboard.cpp index 3acc81ddff..9fd3700675 100644 --- a/engines/agi/keyboard.cpp +++ b/engines/agi/keyboard.cpp @@ -127,7 +127,7 @@ int AgiEngine::handleController(int key) { } if (key == BUTTON_LEFT) { - if (getflag(fMenusWork) && g_mouse.y <= CHAR_LINES) { + if ((getflag(fMenusWork) || (getFeatures() & GF_FORCEMENUS)) && g_mouse.y <= CHAR_LINES) { newInputMode(INPUT_MENU); return true; } diff --git a/engines/agi/menu.cpp b/engines/agi/menu.cpp index 5edaaf0ded..52e402bf12 100644 --- a/engines/agi/menu.cpp +++ b/engines/agi/menu.cpp @@ -267,7 +267,7 @@ bool Menu::keyhandler(int key) { static int menuActive = false; static int buttonUsed = 0; - if (!_vm->getflag(fMenusWork)) + if (!_vm->getflag(fMenusWork) && !(_vm->getFeatures() & GF_FORCEMENUS)) return false; if (!menuActive) { |