diff options
author | Eugene Sandulenko | 2013-12-17 13:58:04 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-12-17 13:59:15 +0200 |
commit | e57745ee9520f89a9b946ad205b3b322d14ef1df (patch) | |
tree | 5f3f1cfee939b5e2644503ae2590fc71afa86fe6 /engines | |
parent | 8bb1666f9f97009a1dbcdb026b25c5bb03fe52ea (diff) | |
download | scummvm-rg350-e57745ee9520f89a9b946ad205b3b322d14ef1df.tar.gz scummvm-rg350-e57745ee9520f89a9b946ad205b3b322d14ef1df.tar.bz2 scummvm-rg350-e57745ee9520f89a9b946ad205b3b322d14ef1df.zip |
FULLPIPE: Implement sceneHandler06_takeBall()
Diffstat (limited to 'engines')
-rw-r--r-- | engines/fullpipe/scenes/scene06.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/engines/fullpipe/scenes/scene06.cpp b/engines/fullpipe/scenes/scene06.cpp index a2b9f2771e..07532588e6 100644 --- a/engines/fullpipe/scenes/scene06.cpp +++ b/engines/fullpipe/scenes/scene06.cpp @@ -143,8 +143,29 @@ void sceneHandler06_installHandle() { chainQueue(QU_SC6_SHOWHANDLE, 0); } +void sceneHandler06_sub08() { + warning("STUB: sceneHandler06_sub08()"); +} + void sceneHandler06_takeBall() { - warning("STUB: sceneHandler06_takeBall()"); + if (g_vars->scene06_var09 && !g_vars->scene06_var09->_movement && g_vars->scene06_var09->_statics->_staticsId == ST_NBL_NORM) { + if (abs(1158 - g_fullpipe->_aniMan->_ox) > 1 + || abs(452 - g_fullpipe->_aniMan->_oy) > 1 + || g_fullpipe->_aniMan->_movement + || g_fullpipe->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) { + MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fullpipe->_aniMan, 1158, 452, 1, (0x4000 | ST_MAN_RIGHT)); + + if (mq) { + ExCommand *ex = new ExCommand(0, 17, MSG_SC6_TAKEBALL, 0, 0, 0, 1, 0, 0, 0); + ex->_excFlags |= 3; + mq->addExCommandToEnd(ex); + + postExCommand(g_fullpipe->_aniMan->_id, 2, 1158, 452, 0, -1); + } + } else { + sceneHandler06_sub08(); + } + } } void sceneHandler06_sub02() { @@ -175,10 +196,6 @@ void sceneHandler06_sub07() { warning("STUB: sceneHandler06_sub07()"); } -void sceneHandler06_sub08() { - warning("STUB: sceneHandler06_sub08()"); -} - void sceneHandler06_sub09() { warning("STUB: sceneHandler06_sub09()"); } |