[Scummvm-cvs-logs] SF.net SVN: scummvm: [26768] scummvm/trunk/engines/saga
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Mon May 7 00:18:31 CEST 2007
Revision: 26768
http://scummvm.svn.sourceforge.net/scummvm/?rev=26768&view=rev
Author: thebluegr
Date: 2007-05-06 15:18:31 -0700 (Sun, 06 May 2007)
Log Message:
-----------
The cursor in IHNM changes to an hourglass now while loading scenes, like in the original interpreter
Modified Paths:
--------------
scummvm/trunk/engines/saga/events.cpp
scummvm/trunk/engines/saga/events.h
scummvm/trunk/engines/saga/gfx.h
scummvm/trunk/engines/saga/scene.cpp
Modified: scummvm/trunk/engines/saga/events.cpp
===================================================================
--- scummvm/trunk/engines/saga/events.cpp 2007-05-06 17:18:11 UTC (rev 26767)
+++ scummvm/trunk/engines/saga/events.cpp 2007-05-06 22:18:31 UTC (rev 26768)
@@ -437,6 +437,12 @@
case kEventHide:
_vm->_gfx->showCursor(false);
break;
+ case kEventSetNormalCursor:
+ _vm->_gfx->setCursor(kCursorNormal);
+ break;
+ case kEventSetBusyCursor:
+ _vm->_gfx->setCursor(kCursorBusy);
+ break;
default:
break;
}
Modified: scummvm/trunk/engines/saga/events.h
===================================================================
--- scummvm/trunk/engines/saga/events.h 2007-05-06 17:18:11 UTC (rev 26767)
+++ scummvm/trunk/engines/saga/events.h 2007-05-06 22:18:31 UTC (rev 26768)
@@ -97,6 +97,8 @@
// CURSOR events
kEventShow = 1,
// kEventHide = 2, // reused
+ kEventSetNormalCursor = 3,
+ kEventSetBusyCursor = 4,
// GRAPHICS events
kEventFillRect = 1,
// kEventSetFlag = 4, // reused
Modified: scummvm/trunk/engines/saga/gfx.h
===================================================================
--- scummvm/trunk/engines/saga/gfx.h 2007-05-06 17:18:11 UTC (rev 26767)
+++ scummvm/trunk/engines/saga/gfx.h 2007-05-06 22:18:31 UTC (rev 26768)
@@ -148,9 +148,9 @@
void palToBlack(PalEntry *src_pal, double percent);
void blackToPal(PalEntry *src_pal, double percent);
void showCursor(bool state);
+ void setCursor(CursorType cursorType = kCursorNormal);
private:
- void setCursor(CursorType cursorType = kCursorNormal);
int _init;
Surface _backBuffer;
byte _currentPal[PAL_ENTRIES * 4];
Modified: scummvm/trunk/engines/saga/scene.cpp
===================================================================
--- scummvm/trunk/engines/saga/scene.cpp 2007-05-06 17:18:11 UTC (rev 26767)
+++ scummvm/trunk/engines/saga/scene.cpp 2007-05-06 22:18:31 UTC (rev 26768)
@@ -595,6 +595,15 @@
Event *q_event;
static PalEntry current_pal[PAL_ENTRIES];
+ // Change the cursor to an hourglass in IHNM
+ if (_vm->getGameType() == GType_IHNM) {
+ event.type = kEvTOneshot;
+ event.code = kCursorEvent;
+ event.op = kEventSetBusyCursor;
+ event.time = 0;
+ _vm->_events->queue(&event);
+ }
+
if ((_vm->getGameType() == GType_IHNM) && (loadSceneParams->chapter != NO_CHAPTER_CHANGE)) {
if (loadSceneParams->loadFlag != kLoadBySceneNumber) {
error("loadScene wrong usage");
@@ -874,8 +883,6 @@
loadSceneParams->sceneProc(SCENE_BEGIN, this);
}
-
-
// We probably don't want "followers" to go into scene -1 , 0. At the very
// least we don't want garbage to be drawn that early in the ITE intro.
if (_sceneNumber > 0 && _sceneNumber != ITE_SCENE_PUZZLE)
@@ -892,6 +899,15 @@
event.time = 0;
_vm->_events->queue(&event);
}
+
+ // Change the cursor back to a crosshair in IHNM
+ if (_vm->getGameType() == GType_IHNM) {
+ event.type = kEvTOneshot;
+ event.code = kCursorEvent;
+ event.op = kEventSetNormalCursor;
+ event.time = 0;
+ _vm->_events->queue(&event);
+ }
}
void Scene::loadSceneDescriptor(uint32 resourceId) {
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