[Scummvm-cvs-logs] SF.net SVN: scummvm: [31282] scummvm/trunk/engines/kyra

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Fri Mar 28 02:03:54 CET 2008


Revision: 31282
          http://scummvm.svn.sourceforge.net/scummvm/?rev=31282&view=rev
Author:   lordhoto
Date:     2008-03-27 18:03:54 -0700 (Thu, 27 Mar 2008)

Log Message:
-----------
- Clear input queue after loading game via hotkeys.
- Fixed bug which caused the need for clicking twice to change pages in spellbook.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/gui_v2.cpp
    scummvm/trunk/engines/kyra/kyra_v2.cpp

Modified: scummvm/trunk/engines/kyra/gui_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/gui_v2.cpp	2008-03-28 00:53:54 UTC (rev 31281)
+++ scummvm/trunk/engines/kyra/gui_v2.cpp	2008-03-28 01:03:54 UTC (rev 31282)
@@ -376,10 +376,8 @@
 		// but did some other magic, which looks like it depends on how the handle
 		// key input... so we just enable 0x1000 and 0x4000 here to allow
 		// all GUI buttons to work (for now at least...)
-		if (inFlags == 199 || inFlags == 198) {
+		if (inFlags == 199 || inFlags == 198)
 			temp = 0x1000 | 0x4000;
-			removeInputTop();
-		}
 
 		//if (inputFlag & 0x800)
 		//	temp <<= 2;
@@ -555,9 +553,12 @@
 			buttonList->flags2 &= 0xFF;
 			buttonList->flags2 |= flags;
 
-			if (buttonList->buttonCallback)
+			if (buttonList->buttonCallback) {
+				removeInputTop();
 				if ((this->*buttonList->buttonCallback)(buttonList))
 					break;
+			}
+			
 			if (buttonList->flags & 0x20)
 				break;
 		}

Modified: scummvm/trunk/engines/kyra/kyra_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra_v2.cpp	2008-03-28 00:53:54 UTC (rev 31281)
+++ scummvm/trunk/engines/kyra/kyra_v2.cpp	2008-03-28 01:03:54 UTC (rev 31282)
@@ -781,14 +781,15 @@
 					(event.kbd.flags == Common::KBD_CTRL || event.kbd.flags == Common::KBD_ALT) && mainLoop) {
 				const char *saveLoadSlot = getSavegameFilename(event.kbd.keycode - '0');
 
-				if (event.kbd.flags == Common::KBD_CTRL)
+				if (event.kbd.flags == Common::KBD_CTRL) {
 					loadGame(saveLoadSlot);
-				else {
+					_eventList.clear();
+					breakLoop = true;
+				} else {
 					char savegameName[14];
 					sprintf(savegameName, "Quicksave %d",  event.kbd.keycode - '0');
 					saveGame(saveLoadSlot, savegameName);
 				}
-				breakLoop = true;
 			} else if (event.kbd.flags == Common::KBD_CTRL) {
 				if (event.kbd.keycode == 'd')
 					_debugger->attach();


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list