diff options
| -rw-r--r-- | engines/fullpipe/scenes/scene14.cpp | 63 | 
1 files changed, 44 insertions, 19 deletions
| diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp index 96abf3538d..f5ed3e0db3 100644 --- a/engines/fullpipe/scenes/scene14.cpp +++ b/engines/fullpipe/scenes/scene14.cpp @@ -160,8 +160,51 @@ void sceneHandler14_showBallGrandmaHit() {  	}  } +void sceneHandler14_sub13() { +	g_vars->scene14_var03 = 0; + +	if (g_fp->_aniMan->_movement) +		g_fp->_aniMan->_movement->gotoLastFrame(); + +	g_fp->_aniMan->stopAnim_maybe(); + +	handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC14_RTRUBA, 0), 0); + +	g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT); + +	chainQueue(QU_SC14_ENDARCADE, 0); + +	getGameLoaderInteractionController()->disableFlag24(); +	getCurrSceneSc2MotionController()->clearEnabled(); +} +  void sceneHandler14_showBallMan() { -	warning("STUB: sceneHandler14_showBallMan()"); +	if (g_vars->scene14_var10) { +		g_vars->scene14_var10->show1(g_vars->scene14_var14 - 166, g_vars->scene14_var15 + 40, MV_BAL14_TOGMA, 0); +		g_vars->scene14_var10->_priority = 27; + +		MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); +		ExCommand *ex = new ExCommand(ANI_BALL14, 1, MV_BAL14_TOGMA, 0, 0, 0, 1, 0, 0, 0); + +		ex->_keyCode = g_vars->scene14_var10->_okeyCode; +		ex->_excFlags |= 2; +		ex->_field_24 = 1; +		mq->addExCommandToEnd(ex); + +		ex = new ExCommand(ANI_BALL14, 6, 0, 0, 0, 0, 1, 0, 0, 0); +		ex->_keyCode = g_vars->scene14_var10->_okeyCode; +		ex->_excFlags |= 3; +		mq->addExCommandToEnd(ex); +		mq->chain(0); + +		g_vars->scene14_var10->startAnim(MV_BAL14_TOGMA, 0, -1); + +		g_vars->scene14_var11.push_back(g_vars->scene14_var10); +		g_vars->scene14_var10 = 0; + +		if (g_vars->scene14_var14 >= 1300) +			sceneHandler14_sub13(); +	}  }  void sceneHandler14_manKickBall() { @@ -361,24 +404,6 @@ void sceneHandler14_sub12() {  	g_fp->_aniMan2 = g_vars->scene14_grandma;  } -void sceneHandler14_sub13() { -	g_vars->scene14_var03 = 0; - -	if (g_fp->_aniMan->_movement) -		g_fp->_aniMan->_movement->gotoLastFrame(); - -	g_fp->_aniMan->stopAnim_maybe(); - -	handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC14_RTRUBA, 0), 0); - -	g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT); - -	chainQueue(QU_SC14_ENDARCADE, 0); - -	getGameLoaderInteractionController()->disableFlag24(); -	getCurrSceneSc2MotionController()->clearEnabled(); -} -  int sceneHandler14(ExCommand *cmd) {  	if (cmd->_messageKind != 17)  		return 0; | 
