diff options
author | Eugene Sandulenko | 2004-11-20 00:05:50 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2004-11-20 00:05:50 +0000 |
commit | e5cc4c629aac5d40f629155679c0c6cd8dc169e4 (patch) | |
tree | 9caf4b0e0b5df0bdc0bec81d4daf9fc663bfb1f2 /saga/scene.cpp | |
parent | 5748227adcc17e76eab0c33e99bb978b170b3de0 (diff) | |
download | scummvm-rg350-e5cc4c629aac5d40f629155679c0c6cd8dc169e4.tar.gz scummvm-rg350-e5cc4c629aac5d40f629155679c0c6cd8dc169e4.tar.bz2 scummvm-rg350-e5cc4c629aac5d40f629155679c0c6cd8dc169e4.zip |
o Restore cursor after walkthrough
o Add cursor events
o Hide cursor during intro
svn-id: r15844
Diffstat (limited to 'saga/scene.cpp')
-rw-r--r-- | saga/scene.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/saga/scene.cpp b/saga/scene.cpp index 8b91cfbd94..3e423dbd19 100644 --- a/saga/scene.cpp +++ b/saga/scene.cpp @@ -174,6 +174,7 @@ int Scene::clearSceneQueue() { int Scene::startScene() { YS_DL_NODE *node; SCENE_QUEUE *scene_qdat; + EVENT event; assert(_initialized); @@ -187,6 +188,12 @@ int Scene::startScene() { return FAILURE; } + // Hide cursor during intro + event.type = ONESHOT_EVENT; + event.code = CURSOR_EVENT; + event.op = EVENT_HIDE; + _vm->_events->queue(&event); + switch (GAME_GetGameType()) { case GID_ITE: ITEStartProc(); @@ -965,6 +972,7 @@ static void CF_objectinfo(int argc, char *argv[], void *refCon) { int Scene::defaultScene(int param, SCENE_INFO *scene_info) { EVENT event; + EVENT *q_event; switch (param) { case SCENE_BEGIN: @@ -1011,8 +1019,14 @@ int Scene::defaultScene(int param, SCENE_INFO *scene_info) { event.op = EVENT_CYCLESTART; event.time = 0; - _vm->_events->queue(&event); + q_event = _vm->_events->queue(&event); + // Show cursor + event.type = ONESHOT_EVENT; + event.code = CURSOR_EVENT; + event.op = EVENT_SHOW; + _vm->_events->chain(q_event, &event); + // Start scene animations _vm->_anim->setFlag(0, ANIM_LOOP); _vm->_anim->play(0, 0); |