From 67c4237a896d2ae4efc5187de2273bb8674bd0aa Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sun, 22 Dec 2013 12:02:02 +0200 Subject: FULLPIPE: Implement sceneHandler08_badLuck() --- engines/fullpipe/scenes/scene08.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'engines/fullpipe/scenes/scene08.cpp') diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp index 1f2d4bc4cc..1452744b7a 100644 --- a/engines/fullpipe/scenes/scene08.cpp +++ b/engines/fullpipe/scenes/scene08.cpp @@ -187,7 +187,25 @@ void sceneHandler08_checkEndArcade() { } void sceneHandler08_badLuck() { - warning("STUB: sceneHandler08_badLuck()"); + g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; + + g_fp->_aniMan->changeStatics2(ST_MAN8_HANDSUP); + g_fp->_aniMan->setOXY(376, 280); + g_fp->_aniMan->_priority = 10; + + MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + + ExCommand *ex = new ExCommand(g_fp->_aniMan->_id, 1, MV_MAN8_BADLUCK, 0, 0, 0, 1, 0, 0, 0); + ex->_excFlags |= 2; + ex->_keyCode = g_fp->_aniMan->_okeyCode; + mq->addExCommandToEnd(ex); + + mq->setFlags(mq->getFlags() | 1); + mq->chain(0); + + g_fp->setObjectState(sO_StairsUp_8, g_fp->getObjectEnumState(sO_StairsUp_8, sO_NotBroken)); + + g_vars->scene08_var01 = 0; } void sceneHandler08_calcOffset() { -- cgit v1.2.3