diff options
author | Eugene Sandulenko | 2013-12-27 21:23:59 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-12-27 21:23:59 +0200 |
commit | ea66761b0466a8ba58fa6b1d9650fa518c8ea513 (patch) | |
tree | 4f7686290f8066d33829e810473506cf155f3eca | |
parent | 271e85a1bc7d517568dc4798d242aa585576fa3b (diff) | |
download | scummvm-rg350-ea66761b0466a8ba58fa6b1d9650fa518c8ea513.tar.gz scummvm-rg350-ea66761b0466a8ba58fa6b1d9650fa518c8ea513.tar.bz2 scummvm-rg350-ea66761b0466a8ba58fa6b1d9650fa518c8ea513.zip |
FULLPIPE: Implement sceneHandler11_hitMan()
-rw-r--r-- | engines/fullpipe/constants.h | 1 | ||||
-rw-r--r-- | engines/fullpipe/gameloader.cpp | 2 | ||||
-rw-r--r-- | engines/fullpipe/gameloader.h | 2 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene11.cpp | 12 |
4 files changed, 14 insertions, 3 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index ce406d0e6f..fa9b3c15b5 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -502,6 +502,7 @@ namespace Fullpipe { #define MSG_SC11_SHOWSWING 1124 #define MSG_SC11_SITSWINGER 5198 #define PIC_SC11_HINT 5170 +#define QU_SC11_MANFALL 3017 #define ST_BTS11_2 2707 #define ST_KCH_STATIC 1122 #define ST_SWR_SIT 1147 diff --git a/engines/fullpipe/gameloader.cpp b/engines/fullpipe/gameloader.cpp index 57c1b23f66..64e6b93fb2 100644 --- a/engines/fullpipe/gameloader.cpp +++ b/engines/fullpipe/gameloader.cpp @@ -510,7 +510,7 @@ InputController *FullpipeEngine::getGameLoaderInputController() { return 0; } -MotionController *getCurrSceneSc2MotionController() { +MctlCompound *getCurrSceneSc2MotionController() { return getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId); } diff --git a/engines/fullpipe/gameloader.h b/engines/fullpipe/gameloader.h index 074537500c..4cfb803d8e 100644 --- a/engines/fullpipe/gameloader.h +++ b/engines/fullpipe/gameloader.h @@ -111,7 +111,7 @@ class GameLoader : public CObject { Inventory2 *getGameLoaderInventory(); InteractionController *getGameLoaderInteractionController(); MctlCompound *getSc2MctlCompoundBySceneId(int16 sceneId); -MotionController *getCurrSceneSc2MotionController(); +MctlCompound *getCurrSceneSc2MotionController(); } // End of namespace Fullpipe diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp index 0782ef8b7a..388421fc22 100644 --- a/engines/fullpipe/scenes/scene11.cpp +++ b/engines/fullpipe/scenes/scene11.cpp @@ -150,7 +150,17 @@ void sceneHandler11_restartMan() { } void sceneHandler11_hitMan() { - warning("STUB: sceneHandler11_hitMan()"); + if (g_fp->_aniMan->_ox > 345 && g_fp->_aniMan->_ox < 355) { + g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); + + MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC11_MANFALL), 0, 0); + + mq->setFlags(mq->getFlags() | 1); + if (!mq->chain(g_fp->_aniMan)) + delete mq; + + getCurrSceneSc2MotionController()->replaceNodeX(353, 303); + } } void sceneHandler11_manToSwing() { |