[Scummvm-cvs-logs] scummvm master -> e136183a35c6fc8927883ba94a0554b06d69c90b
sev-
sev at scummvm.org
Fri Dec 13 15:00:14 CET 2013
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e136183a35 FULLPIPE: Implement sceneHandler04_leaveScene()
Commit: e136183a35c6fc8927883ba94a0554b06d69c90b
https://github.com/scummvm/scummvm/commit/e136183a35c6fc8927883ba94a0554b06d69c90b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-13T05:59:29-08:00
Commit Message:
FULLPIPE: Implement sceneHandler04_leaveScene()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene04.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 1a59cce..31ca2d3 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -173,6 +173,7 @@ namespace Fullpipe {
#define PIC_IN1_PIPETITLE 5167
#define PIC_INV_MENU 991
#define PIC_MAP_A13 5275
+#define PIC_MAP_P03 5279
#define PIC_MAP_S01 5223
#define PIC_SC1_KUCHKA 1321
#define PIC_SC1_LADDER 1091
@@ -209,6 +210,7 @@ namespace Fullpipe {
#define QU_SC3_EXITLIFT 2808
#define QU_SC4_GOCLOCK 595
#define QU_SC4_MANFROMBOTTLE 2851
+#define QU_SC4_MANTOBOTTLE 2850
#define SC_1 301
#define SC_10 653
#define SC_11 654
diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp
index 07ac109..d0cab72 100644
--- a/engines/fullpipe/scenes/scene04.cpp
+++ b/engines/fullpipe/scenes/scene04.cpp
@@ -652,8 +652,29 @@ void sceneHandler04_springWobble() {
sceneHandler04_bottleUpdateObjects(oldDynIndex - g_vars->scene04_dynamicPhaseIndex);
}
-void sceneHandler04_sub5() {
- warning("STUB: sceneHandler04_sub5()");
+void sceneHandler04_leaveScene() {
+ g_fullpipe->_aniMan2 = 0;
+
+ MessageQueue *mq = new MessageQueue(g_fullpipe->_currentScene->getMessageQueueById(QU_SC4_MANTOBOTTLE), 0, 0);
+ ExCommand *ex = 0;
+
+ for (uint i = 0; i < mq->getCount(); i++) {
+ if (mq->getExCommandByIndex(i)->_messageKind == 27) {
+ ex = mq->getExCommandByIndex(i);
+ break;
+ }
+ }
+
+ ex->_y = g_vars->scene04_bottle->_oy - 304;
+
+ mq->chain(0);
+
+ g_vars->scene04_var07 = 0;
+ g_vars->scene04_dudeOnLadder = 0;
+
+ g_fullpipe->_behaviorManager->setFlagByStaticAniObject(g_fullpipe->_aniMan, 0);
+
+ g_fullpipe->updateMapPiece(PIC_MAP_P03, 1);
}
void sceneHandler04_liftBottle() {
@@ -963,7 +984,7 @@ int sceneHandler04(ExCommand *ex) {
sceneHandler04_springWobble();
if (g_vars->scene04_var07 && !g_vars->scene04_var09)
- sceneHandler04_sub5();
+ sceneHandler04_leaveScene();
if (g_vars->scene04_var12)
sceneHandler04_liftBottle();
More information about the Scummvm-git-logs
mailing list