[Scummvm-cvs-logs] scummvm master -> badfd14f74166d614d1413d2ab26458ea262803c

sev- sev at scummvm.org
Sun Dec 22 11:35:59 CET 2013


This automated email contains information about 5 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
67c4237a89 FULLPIPE: Implement sceneHandler08_badLuck()
535d7823b0 FULLPIPE: Implement sceneHandler08_checkEndArcade()
24ca8ed2e7 FULLPIPE: Implement sceneHandler08_enterUp()
0d1876ef2e FULLPIPE: Implement sceneHandler08_jumpOff() and sceneHandler08_jumpLogic()
badfd14f74 FULPIPE: Implement sceneHandler08_calcFlight()


Commit: 67c4237a896d2ae4efc5187de2273bb8674bd0aa
    https://github.com/scummvm/scummvm/commit/67c4237a896d2ae4efc5187de2273bb8674bd0aa
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-22T02:02:02-08:00

Commit Message:
FULLPIPE: Implement sceneHandler08_badLuck()

Changed paths:
    engines/fullpipe/constants.h
    engines/fullpipe/scenes/scene08.cpp



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index af495ee..77968b6 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -208,6 +208,7 @@ namespace Fullpipe {
 #define MV_MAN_TURN_SUD 1089
 #define MV_MAN6_TAKEBALL 2691
 #define MV_MAN6_THROWBALL 2692
+#define MV_MAN8_BADLUCK 783
 #define MV_MAN8_SITDOWN 2968
 #define MV_MANHDL_HANDLEDOWN 630
 #define MV_MANHDL_HANDLEUP 631
@@ -453,6 +454,7 @@ namespace Fullpipe {
 #define ST_MAN_UP 449
 #define ST_MAN6_BALL 2688
 #define ST_MAN8_FLYDOWN 771
+#define ST_MAN8_HANDSUP 773
 #define ST_MOM_SITS 659
 #define ST_MOM_STANDS 658
 #define ST_NBL_NORM 1076
diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index 1f2d4bc..1452744 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() {


Commit: 535d7823b0a94352ec715910709807265c49b860
    https://github.com/scummvm/scummvm/commit/535d7823b0a94352ec715910709807265c49b860
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-22T02:09:15-08:00

Commit Message:
FULLPIPE: Implement sceneHandler08_checkEndArcade()

Changed paths:
    engines/fullpipe/scenes/scene08.cpp



diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index 1452744..c48fa72 100644
--- a/engines/fullpipe/scenes/scene08.cpp
+++ b/engines/fullpipe/scenes/scene08.cpp
@@ -182,8 +182,34 @@ void sceneHandler08_calcFlight() {
 	warning("STUB: sceneHandler08_calcFlight()");
 }
 
+void sceneHandler08_finishArcade() {
+	g_vars->scene08_var06 = 0;
+
+	getGameLoaderInteractionController()->enableFlag24();
+	getCurrSceneSc2MotionController()->setEnabled();
+}
+
 void sceneHandler08_checkEndArcade() {
-	warning("STUB: sceneHandler08_checkEndArcade()");
+	if (g_vars->scene08_var02) {
+		int x = g_fp->_aniMan->_ox;
+		int y = g_vars->scene08_var08 + g_fp->_aniMan->_oy;
+
+		if (!((g_vars->scene08_var08 + g_fp->_aniMan->_oy) % 3))
+			g_vars->scene08_var08--;
+
+		g_fp->_aniMan->setOXY(x, y);
+
+		if (y < 80) {
+			sceneHandler08_finishArcade();
+
+			ExCommand *ex = new ExCommand(SC_8, 17, 0, 0, 0, 0, 1, 0, 0, 0);
+			ex->_messageNum = 61;
+			ex->_excFlags |= 2;
+			ex->_keyCode = TrubaUp;
+
+			ex->postMessage();
+		}
+	}
 }
 
 void sceneHandler08_badLuck() {
@@ -212,13 +238,6 @@ void sceneHandler08_calcOffset() {
 	warning("STUB: sceneHandler08_calcOffset()");
 }
 
-void sceneHandler08_finishArcade() {
-	g_vars->scene08_var06 = 0;
-
-	getGameLoaderInteractionController()->enableFlag24();
-	getCurrSceneSc2MotionController()->setEnabled();
-}
-
 void sceneHandler08_jumpOff() {
 	warning("STUB: sceneHandler08_jumpOff()");
 }


Commit: 24ca8ed2e76ca98b6704fb2c3514765af7b01051
    https://github.com/scummvm/scummvm/commit/24ca8ed2e76ca98b6704fb2c3514765af7b01051
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-22T02:13:25-08:00

Commit Message:
FULLPIPE: Implement sceneHandler08_enterUp()

Changed paths:
    engines/fullpipe/constants.h
    engines/fullpipe/scenes/scene08.cpp



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 77968b6..9791aca 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -333,6 +333,7 @@ namespace Fullpipe {
 #define QU_SC6_FALLBALL 2690
 #define QU_SC6_SHOWHANDLE 1689
 #define QU_SC6_SHOWNEXTBALL 2689
+#define QU_SC8_FINISH 788
 #define QU_SC8_STANDUP 2975
 #define QU_SC10_ENTERLIFT 1067
 #define QU_SC10_EXITLIFT 2809
diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index c48fa72..e636b07 100644
--- a/engines/fullpipe/scenes/scene08.cpp
+++ b/engines/fullpipe/scenes/scene08.cpp
@@ -131,7 +131,16 @@ int scene08_updateCursor() {
 }
 
 void sceneHandler08_enterUp() {
-	warning("STUB: sceneHandler08_enterUp()");
+	g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB;
+
+	g_fp->_aniMan->changeStatics2(ST_MAN8_HANDSUP);
+	g_fp->_aniMan->setOXY(386, 236);
+	g_fp->_aniMan->_priority = 10;
+	g_fp->_aniMan->_flags = 4;
+
+	chainObjQueue(g_fp->_aniMan, QU_SC8_FINISH, 1);
+
+	g_vars->scene08_var01 = 0;
 }
 
 void sceneHandler08_winArcade() {


Commit: 0d1876ef2e243b62b4754940b46a9a1096fbc298
    https://github.com/scummvm/scummvm/commit/0d1876ef2e243b62b4754940b46a9a1096fbc298
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-22T02:20:20-08:00

Commit Message:
FULLPIPE: Implement sceneHandler08_jumpOff() and sceneHandler08_jumpLogic()

Changed paths:
    engines/fullpipe/constants.h
    engines/fullpipe/scenes/scene08.cpp



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 9791aca..6e68f97 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -209,6 +209,7 @@ namespace Fullpipe {
 #define MV_MAN6_TAKEBALL 2691
 #define MV_MAN6_THROWBALL 2692
 #define MV_MAN8_BADLUCK 783
+#define MV_MAN8_JUMPOFF 2969
 #define MV_MAN8_SITDOWN 2968
 #define MV_MANHDL_HANDLEDOWN 630
 #define MV_MANHDL_HANDLEUP 631
diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index e636b07..763e6f7 100644
--- a/engines/fullpipe/scenes/scene08.cpp
+++ b/engines/fullpipe/scenes/scene08.cpp
@@ -183,14 +183,6 @@ void sceneHandler08_airMoves() {
 	warning("STUB: sceneHandler08_airMoves()");
 }
 
-void sceneHandler08_jumpLogic(ExCommand *cmd) {
-	warning("STUB: sceneHandler08_jumpLogic(cmd)");
-}
-
-void sceneHandler08_calcFlight() {
-	warning("STUB: sceneHandler08_calcFlight()");
-}
-
 void sceneHandler08_finishArcade() {
 	g_vars->scene08_var06 = 0;
 
@@ -198,6 +190,38 @@ void sceneHandler08_finishArcade() {
 	getCurrSceneSc2MotionController()->setEnabled();
 }
 
+void sceneHandler08_jumpOff(ExCommand *cmd) {
+	MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
+
+	mq->addExCommandToEnd(new ExCommand(cmd));
+	mq->setFlags(mq->getFlags() | 1);
+
+	g_fp->_globalMessageQueueList->addMessageQueue(mq);
+
+	g_fp->_aniMan->startAnim(MV_MAN8_JUMPOFF, mq->_id, -1);
+
+	sceneHandler08_finishArcade();
+}
+
+void sceneHandler08_standUp() {
+	chainQueue(QU_SC8_STANDUP, 1);
+	g_vars->scene08_var03 = 0;
+}
+
+void sceneHandler08_jumpLogic(ExCommand *cmd) {
+  if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC8_LADDERD) {
+    sceneHandler08_jumpOff(cmd);
+
+    cmd->_messageKind = 0;
+  } else {
+    sceneHandler08_standUp();
+  }
+}
+
+void sceneHandler08_calcFlight() {
+	warning("STUB: sceneHandler08_calcFlight()");
+}
+
 void sceneHandler08_checkEndArcade() {
 	if (g_vars->scene08_var02) {
 		int x = g_fp->_aniMan->_ox;
@@ -247,10 +271,6 @@ void sceneHandler08_calcOffset() {
 	warning("STUB: sceneHandler08_calcOffset()");
 }
 
-void sceneHandler08_jumpOff() {
-	warning("STUB: sceneHandler08_jumpOff()");
-}
-
 void sceneHandler08_pushCallback(int *par) {
 	warning("STUB: sceneHandler08_pushCallback()");
 }
@@ -268,11 +288,6 @@ void sceneHandler08_sitDown() {
 	g_vars->scene08_var03 = 1;
 }
 
-void sceneHandler08_standUp() {
-	chainQueue(QU_SC8_STANDUP, 1);
-	g_vars->scene08_var03 = 0;
-}
-
 int sceneHandler08_updateScreenCallback() {
 	int res;
 


Commit: badfd14f74166d614d1413d2ab26458ea262803c
    https://github.com/scummvm/scummvm/commit/badfd14f74166d614d1413d2ab26458ea262803c
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-22T02:34:49-08:00

Commit Message:
FULPIPE: Implement sceneHandler08_calcFlight()

Changed paths:
    engines/fullpipe/constants.h
    engines/fullpipe/scenes/scene08.cpp



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 6e68f97..115b867 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -209,6 +209,8 @@ namespace Fullpipe {
 #define MV_MAN6_TAKEBALL 2691
 #define MV_MAN6_THROWBALL 2692
 #define MV_MAN8_BADLUCK 783
+#define MV_MAN8_HANDSDOWN 772
+#define MV_MAN8_HANDSUP 777
 #define MV_MAN8_JUMPOFF 2969
 #define MV_MAN8_SITDOWN 2968
 #define MV_MANHDL_HANDLEDOWN 630
@@ -233,6 +235,7 @@ namespace Fullpipe {
 #define MV_SC7_BOX_default 792
 #define MV_SPK4_PLAY 3276
 #define MV_SPR_LOWER 543
+#define MV_VMT_DEF 765
 #define PIC_CMN_EVAL 3468
 #define PIC_CSR_DEFAULT 4891
 #define PIC_CSR_DEFAULT_INV 4892
@@ -456,6 +459,7 @@ namespace Fullpipe {
 #define ST_MAN_UP 449
 #define ST_MAN6_BALL 2688
 #define ST_MAN8_FLYDOWN 771
+#define ST_MAN8_FLYUP 769
 #define ST_MAN8_HANDSUP 773
 #define ST_MOM_SITS 659
 #define ST_MOM_STANDS 658
diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index 763e6f7..181ac58 100644
--- a/engines/fullpipe/scenes/scene08.cpp
+++ b/engines/fullpipe/scenes/scene08.cpp
@@ -218,33 +218,6 @@ void sceneHandler08_jumpLogic(ExCommand *cmd) {
   }
 }
 
-void sceneHandler08_calcFlight() {
-	warning("STUB: sceneHandler08_calcFlight()");
-}
-
-void sceneHandler08_checkEndArcade() {
-	if (g_vars->scene08_var02) {
-		int x = g_fp->_aniMan->_ox;
-		int y = g_vars->scene08_var08 + g_fp->_aniMan->_oy;
-
-		if (!((g_vars->scene08_var08 + g_fp->_aniMan->_oy) % 3))
-			g_vars->scene08_var08--;
-
-		g_fp->_aniMan->setOXY(x, y);
-
-		if (y < 80) {
-			sceneHandler08_finishArcade();
-
-			ExCommand *ex = new ExCommand(SC_8, 17, 0, 0, 0, 0, 1, 0, 0, 0);
-			ex->_messageNum = 61;
-			ex->_excFlags |= 2;
-			ex->_keyCode = TrubaUp;
-
-			ex->postMessage();
-		}
-	}
-}
-
 void sceneHandler08_badLuck() {
 	g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB;
 
@@ -267,14 +240,6 @@ void sceneHandler08_badLuck() {
 	g_vars->scene08_var01 = 0;
 }
 
-void sceneHandler08_calcOffset() {
-	warning("STUB: sceneHandler08_calcOffset()");
-}
-
-void sceneHandler08_pushCallback(int *par) {
-	warning("STUB: sceneHandler08_pushCallback()");
-}
-
 void sceneHandler08_sitDown() {
 	g_fp->_aniMan->setOXY(380, g_fp->_aniMan->_oy);
 
@@ -288,6 +253,85 @@ void sceneHandler08_sitDown() {
 	g_vars->scene08_var03 = 1;
 }
 
+void sceneHandler08_calcFlight() {
+	Common::Point point;
+	int y = g_vars->scene08_var08 + g_fp->_aniMan->_oy;
+
+	g_fp->_aniMan->setOXY(g_fp->_aniMan->_ox, y);
+
+	g_vars->scene08_var08 += 2;
+
+	if (g_vars->scene08_var08 < g_vars->scene08_var04)
+		g_vars->scene08_var08 = g_vars->scene08_var04;
+
+	y = y + g_fp->_aniMan->getSomeXY(point)->y;
+
+	if (g_fp->_aniMan->_statics && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN)
+		y -= 25;
+
+	if (y <= g_vars->scene08_vmyats->_oy) {
+		g_vars->scene08_vmyats->hide();
+	} else {
+		g_vars->scene08_vmyats->show1(-1, -1, -1, 0);
+
+		if (!g_vars->scene08_vmyats->_movement)
+			g_vars->scene08_vmyats->startAnim(MV_VMT_DEF, 0, -1);
+	}
+
+	if (g_fp->_aniMan->_oy <= 280 && g_vars->scene08_var07 && g_fp->_aniMan->_statics && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP) {
+		sceneHandler08_badLuck();
+	} else if (g_fp->_aniMan->_oy > 236 || g_vars->scene08_var07 || !g_fp->_aniMan->_statics || g_fp->_aniMan->_statics->_staticsId != ST_MAN8_HANDSUP) {
+		if (g_fp->_aniMan->_movement || g_fp->_aniMan->_oy < 660 
+			 || (g_vars->scene08_vmyats->_movement && g_vars->scene08_vmyats->_movement->_currDynamicPhaseIndex > 0) 
+			|| abs(g_vars->scene08_var08) > 2) {
+			if (g_vars->scene08_var08 >= 0 && !g_fp->_aniMan->_movement) {
+				if (g_fp->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP)
+					g_fp->_aniMan->startAnim(MV_MAN8_HANDSDOWN, 0, -1);
+				else
+					g_fp->_aniMan->changeStatics2(ST_MAN8_FLYDOWN);
+			}
+
+			if (g_fp->_aniMan->_oy < 500 && !g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYUP && g_vars->scene08_var08 < 0)
+				g_fp->_aniMan->startAnim(MV_MAN8_HANDSUP, 0, -1);
+		} else {
+			sceneHandler08_sitDown();
+		}
+	} else {
+		sceneHandler08_enterUp();
+	}
+}
+
+void sceneHandler08_checkEndArcade() {
+	if (g_vars->scene08_var02) {
+		int x = g_fp->_aniMan->_ox;
+		int y = g_vars->scene08_var08 + g_fp->_aniMan->_oy;
+
+		if (!((g_vars->scene08_var08 + g_fp->_aniMan->_oy) % 3))
+			g_vars->scene08_var08--;
+
+		g_fp->_aniMan->setOXY(x, y);
+
+		if (y < 80) {
+			sceneHandler08_finishArcade();
+
+			ExCommand *ex = new ExCommand(SC_8, 17, 0, 0, 0, 0, 1, 0, 0, 0);
+			ex->_messageNum = 61;
+			ex->_excFlags |= 2;
+			ex->_keyCode = TrubaUp;
+
+			ex->postMessage();
+		}
+	}
+}
+
+void sceneHandler08_calcOffset() {
+	warning("STUB: sceneHandler08_calcOffset()");
+}
+
+void sceneHandler08_pushCallback(int *par) {
+	warning("STUB: sceneHandler08_pushCallback()");
+}
+
 int sceneHandler08_updateScreenCallback() {
 	int res;
 






More information about the Scummvm-git-logs mailing list