aboutsummaryrefslogtreecommitdiff
path: root/engines/saga/scene.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2007-05-06 22:18:31 +0000
committerFilippos Karapetis2007-05-06 22:18:31 +0000
commitc4c9ff55332beec55b4bb3fe49af9efdcad88c46 (patch)
tree7dba9e8d940f66e58429e29d8420dd19ad3ac3c9 /engines/saga/scene.cpp
parentb9cdca27eeefd445be97938577290967ffe0bf32 (diff)
downloadscummvm-rg350-c4c9ff55332beec55b4bb3fe49af9efdcad88c46.tar.gz
scummvm-rg350-c4c9ff55332beec55b4bb3fe49af9efdcad88c46.tar.bz2
scummvm-rg350-c4c9ff55332beec55b4bb3fe49af9efdcad88c46.zip
The cursor in IHNM changes to an hourglass now while loading scenes, like in the original interpreter
svn-id: r26768
Diffstat (limited to 'engines/saga/scene.cpp')
-rw-r--r--engines/saga/scene.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/engines/saga/scene.cpp b/engines/saga/scene.cpp
index 20dab8023f..94f81c8ba3 100644
--- a/engines/saga/scene.cpp
+++ b/engines/saga/scene.cpp
@@ -595,6 +595,15 @@ void Scene::loadScene(LoadSceneParams *loadSceneParams) {
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 @@ void Scene::loadScene(LoadSceneParams *loadSceneParams) {
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 @@ void Scene::loadScene(LoadSceneParams *loadSceneParams) {
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) {