[Scummvm-cvs-logs] SF.net SVN: scummvm: [21377] scummvm/trunk/engines/kyra
vinterstum at users.sourceforge.net
vinterstum at users.sourceforge.net
Sat Mar 18 21:56:01 CET 2006
Revision: 21377
Author: vinterstum
Date: 2006-03-18 21:55:26 -0800 (Sat, 18 Mar 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=21377&view=rev
Log Message:
-----------
Adds button press animations to the menu, and resets the cursor when the Dialog of Death pops up. Also, mouse clicks are now registered on button up instead of button down, as in the original
Modified Paths:
--------------
scummvm/trunk/engines/kyra/gui.cpp
scummvm/trunk/engines/kyra/kyra.cpp
Modified: scummvm/trunk/engines/kyra/gui.cpp
===================================================================
--- scummvm/trunk/engines/kyra/gui.cpp 2006-03-19 05:15:49 UTC (rev 21376)
+++ scummvm/trunk/engines/kyra/gui.cpp 2006-03-19 05:55:26 UTC (rev 21377)
@@ -251,7 +251,9 @@
if (_mousePressFlag) {
if (!(list->flags2 & 1)) {
list->flags2 |= 1;
+ list->flags2 |= 4;
processButton(list);
+ _screen->updateScreen();
}
} else {
if (list->flags2 & 1) {
@@ -276,6 +278,11 @@
list->flags2 &= 0xFFFE;
processButton(list);
}
+ if (list->flags2 & 4) {
+ list->flags2 &= 0xFFFB;
+ processButton(list);
+ _screen->updateScreen();
+ }
list = list->nextButton;
continue;
}
@@ -353,8 +360,6 @@
if (!_displayMenu)
return;
- //_screen->hideMouse();
-
if ( !button || (button->flags & 8))
return;
@@ -374,7 +379,6 @@
processButton(button);
- //_screen->showMouse();
}
int KyraEngine::drawBoxCallback(Button *button) {
@@ -426,7 +430,8 @@
_menuRestoreScreen = true;
_keyboardEvent.pending = 0;
_keyboardEvent.repeat = 0;
-
+ _mousePressFlag = false;
+
_toplevelMenu = 0;
if (_menuDirectlyToLoad)
gui_loadGameMenu(0);
@@ -569,16 +574,18 @@
OSystem::Event event;
uint32 now = _system->getMillis();
- _mousePressFlag = false;
_mouseWheel = 0;
while (_system->pollEvent(event)) {
switch (event.type) {
case OSystem::EVENT_QUIT:
quitGame();
break;
- case OSystem::EVENT_LBUTTONUP:
+ case OSystem::EVENT_LBUTTONDOWN:
_mousePressFlag = true;
break;
+ case OSystem::EVENT_LBUTTONUP:
+ _mousePressFlag = false;
+ break;
case OSystem::EVENT_MOUSEMOVE:
_mouseX = event.mouse.x;
_mouseY = event.mouse.y;
Modified: scummvm/trunk/engines/kyra/kyra.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra.cpp 2006-03-19 05:15:49 UTC (rev 21376)
+++ scummvm/trunk/engines/kyra/kyra.cpp 2006-03-19 05:55:26 UTC (rev 21377)
@@ -683,6 +683,10 @@
_deathHandler = 0xFF;
snd_playWanderScoreViaMap(0, 1);
snd_playSoundEffect(49);
+ _screen->hideMouse();
+ _screen->setMouseCursor(1, 1, _shapes[4]);
+ destroyMouseItem();
+ _screen->showMouse();
buttonMenuCallback(0);
}
@@ -727,7 +731,6 @@
char saveLoadSlot[20];
char savegameName[14];
- _mousePressFlag = false;
uint32 start = _system->getMillis();
do {
while (_system->pollEvent(event)) {
@@ -765,6 +768,9 @@
break;
case OSystem::EVENT_LBUTTONDOWN:
_mousePressFlag = true;
+ break;
+ case OSystem::EVENT_LBUTTONUP:
+ _mousePressFlag = false;
if (_abortWalkFlag2) {
_abortWalkFlag = true;
_mouseX = event.mouse.x;
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