[Scummvm-cvs-logs] scummvm master -> 562d539db9ecb8690006236449c78335fab8f120

sev- sev at scummvm.org
Sun Dec 29 23:43:56 CET 2013


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

Summary:
a57e2428ec FULLPIPE: Implement sceneHandler13_closeBridge()
58ffa21c29 FULLPIPE: More code to scene13
edb26cb563 FULLPIPE: Implement sceneHandler13_openBridge()
cb647a4dfa FULLPIPE: Implement sceneHandler13_testClose()/testOpen()
c0c8be7dce FULLPIPE: Fix warning
562d539db9 FULLPIPE: implement sceneHandler13_uneatGum()/updateBridge()


Commit: a57e2428ecae767ac805e2264d54f0a74213fee5
    https://github.com/scummvm/scummvm/commit/a57e2428ecae767ac805e2264d54f0a74213fee5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:12:43-08:00

Commit Message:
FULLPIPE: Implement sceneHandler13_closeBridge()

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



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index c51db8a..6cb507c 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -549,6 +549,8 @@ namespace Fullpipe {
 #define MSG_SC13_TESTOPEN 3048
 #define MSG_SC13_UNEATGUM 1218
 #define MSG_SC13_UPDATEBRIDGE 1217
+#define MV_BDG_CLOSE 1382
+#define MV_BDG_OPEN 1379
 #define MV_WHR13_SPIN 1384
 #define SND_13_018 3763
 #define SND_13_037 5335
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index 29e635a..d46f73b 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -93,7 +93,23 @@ void sceneHandler13_testOpen() {
 }
 
 void sceneHandler13_closeBridge() {
-	warning("STUB: sceneHandler13_closeBridge()");
+	if (g_vars->scene13_bridge->_movement && g_vars->scene13_bridge->_movement->_id == MV_BDG_OPEN) {
+		int sz;
+
+		if (g_vars->scene13_bridge->_movement->_currMovement)
+			sz = g_vars->scene13_bridge->_movement->_currMovement->_dynamicPhases.size();
+		else
+			sz = g_vars->scene13_bridge->_movement->_dynamicPhases.size();
+
+		int curIdx = g_vars->scene13_bridge->_movement->_currDynamicPhaseIndex;
+
+		g_vars->scene13_bridge->changeStatics2(ST_BDG_OPEN2);
+		g_vars->scene13_bridge->startAnim(MV_BDG_CLOSE, 0, -1);
+		g_vars->scene13_bridge->_movement->setDynamicPhaseIndex(sz - curIdx);
+	} else {
+		g_vars->scene13_bridge->changeStatics2(ST_BDG_OPEN2);
+		g_vars->scene13_bridge->startAnim(MV_BDG_CLOSE, 0, -1);
+	}
 }
 
 void sceneHandler13_closeFast() {


Commit: 58ffa21c29b48a8950fe49811b817ad2a863ca37
    https://github.com/scummvm/scummvm/commit/58ffa21c29b48a8950fe49811b817ad2a863ca37
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:22:19-08:00

Commit Message:
FULLPIPE: More code to scene13

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



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 6cb507c..472943c 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -552,10 +552,15 @@ namespace Fullpipe {
 #define MV_BDG_CLOSE 1382
 #define MV_BDG_OPEN 1379
 #define MV_WHR13_SPIN 1384
+#define QU_SC13_SHOWGUM 1216
+#define QU_STR_CHEW 1190
 #define SND_13_018 3763
+#define SND_13_033 4685
+#define SND_13_034 4686
 #define SND_13_037 5335
 #define ST_BDG_CLOSED 1380
 #define ST_BDG_OPEN2 1381
+#define ST_STR_RIGHT 1174
 
 // Scene 15
 #define ANI_BOOT_15 4779
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index d46f73b..2080bb0 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -113,19 +113,32 @@ void sceneHandler13_closeBridge() {
 }
 
 void sceneHandler13_closeFast() {
-	warning("STUB: sceneHandler13_closeFast()");
+	g_vars->scene13_bridge->changeStatics2(ST_BDG_OPEN2);
+	g_vars->scene13_bridge->startAnim(MV_BDG_CLOSE, 0, -1);
+	g_vars->scene13_bridge->_movement->setDynamicPhaseIndex(21);
 }
 
 void sceneHandler13_stopWhirlgig() {
-	warning("STUB: sceneHandler13_stopWhirlgig()");
+	g_vars->scene13_whirlgig->_callback2 = 0;
+
+	g_fp->stopAllSoundInstances(SND_13_018);
+	g_fp->playSound(SND_13_033, 0);
+	g_fp->playSound(SND_13_037, 1);
 }
 
 void sceneHandler13_startWhirlgig() {
-	warning("STUB: sceneHandler13_startWhirlgig()");
+	g_vars->scene13_whirlgig->_callback2 = 0;
+
+	g_fp->playSound(SND_13_018, 1);
+	g_fp->playSound(SND_13_034, 0);
+
+	g_fp->stopAllSoundInstances(SND_13_037);
 }
 
 void sceneHandler13_openFast() {
-	warning("STUB: sceneHandler13_openFast()");
+	g_vars->scene13_bridge->changeStatics2(ST_BDG_CLOSED);
+	g_vars->scene13_bridge->startAnim(MV_BDG_OPEN, 0, -1);
+	g_vars->scene13_bridge->_movement->setDynamicPhaseIndex(15);
 }
 
 void sceneHandler13_uneatGum() {
@@ -133,7 +146,12 @@ void sceneHandler13_uneatGum() {
 }
 
 void sceneHandler13_eatGum() {
-	warning("STUB: sceneHandler13_eatGum()");
+	BehaviorEntryInfo *beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW);
+
+	if (beh) {
+		beh->_percent = 10922;
+		beh->_delay = 0;
+	}
 }
 
 void sceneHandler13_updateBridge() {
@@ -141,7 +159,7 @@ void sceneHandler13_updateBridge() {
 }
 
 void sceneHandler13_showGum() {
-	warning("STUB: sceneHandler13_showGum()");
+	chainQueue(QU_SC13_SHOWGUM, 0);
 }
 
 void sceneHandler13_sub01(bool flag) {


Commit: edb26cb56305f7cfec816ba57c0d18e860038ae1
    https://github.com/scummvm/scummvm/commit/edb26cb56305f7cfec816ba57c0d18e860038ae1
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:27:26-08:00

Commit Message:
FULLPIPE: Implement sceneHandler13_openBridge()

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



diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index 2080bb0..e2d7f88 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -81,7 +81,24 @@ void scene13_initScene(Scene *sc) {
 }
 
 void sceneHandler13_openBridge() {
-	warning("STUB: sceneHandler13_openBridge()");
+	Movement *mov = g_vars->scene13_bridge->_movement;
+
+	if (mov && mov->_id == MV_BDG_CLOSE) {
+		int sz;
+
+		if (mov->_currMovement)
+			sz = mov->_currMovement->_dynamicPhases.size();
+		else
+			sz = mov->_dynamicPhases.size();
+
+		g_vars->scene13_bridge->changeStatics2(ST_BDG_CLOSED);
+		g_vars->scene13_bridge->startAnim(MV_BDG_OPEN, 0, -1);
+
+		mov->setDynamicPhaseIndex(sz - mov->_currDynamicPhaseIndex);
+	} else {
+		g_vars->scene13_bridge->changeStatics2(ST_BDG_CLOSED);
+		g_vars->scene13_bridge->startAnim(MV_BDG_OPEN, 0, -1);
+	}
 }
 
 void sceneHandler13_testClose() {
@@ -93,19 +110,20 @@ void sceneHandler13_testOpen() {
 }
 
 void sceneHandler13_closeBridge() {
-	if (g_vars->scene13_bridge->_movement && g_vars->scene13_bridge->_movement->_id == MV_BDG_OPEN) {
+	Movement *mov = g_vars->scene13_bridge->_movement;
+
+	if (mov && mov->_id == MV_BDG_OPEN) {
 		int sz;
 
-		if (g_vars->scene13_bridge->_movement->_currMovement)
-			sz = g_vars->scene13_bridge->_movement->_currMovement->_dynamicPhases.size();
+		if (mov->_currMovement)
+			sz = mov->_currMovement->_dynamicPhases.size();
 		else
-			sz = g_vars->scene13_bridge->_movement->_dynamicPhases.size();
-
-		int curIdx = g_vars->scene13_bridge->_movement->_currDynamicPhaseIndex;
+			sz = mov->_dynamicPhases.size();
 
 		g_vars->scene13_bridge->changeStatics2(ST_BDG_OPEN2);
 		g_vars->scene13_bridge->startAnim(MV_BDG_CLOSE, 0, -1);
-		g_vars->scene13_bridge->_movement->setDynamicPhaseIndex(sz - curIdx);
+
+		mov->setDynamicPhaseIndex(sz - mov->_currDynamicPhaseIndex);
 	} else {
 		g_vars->scene13_bridge->changeStatics2(ST_BDG_OPEN2);
 		g_vars->scene13_bridge->startAnim(MV_BDG_CLOSE, 0, -1);


Commit: cb647a4dfadf693aeeea0c07e677b5a788ca056e
    https://github.com/scummvm/scummvm/commit/cb647a4dfadf693aeeea0c07e677b5a788ca056e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:33:31-08:00

Commit Message:
FULLPIPE: Implement sceneHandler13_testClose()/testOpen()

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



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 472943c..dc50b56 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -552,6 +552,10 @@ namespace Fullpipe {
 #define MV_BDG_CLOSE 1382
 #define MV_BDG_OPEN 1379
 #define MV_WHR13_SPIN 1384
+#define QU_SC13_CLOSEFAIL 3063
+#define QU_SC13_CLOSESUCCESS 3062
+#define QU_SC13_OPENFAIL 3042
+#define QU_SC13_OPENSUCCESS 3047
 #define QU_SC13_SHOWGUM 1216
 #define QU_STR_CHEW 1190
 #define SND_13_018 3763
@@ -560,6 +564,12 @@ namespace Fullpipe {
 #define SND_13_037 5335
 #define ST_BDG_CLOSED 1380
 #define ST_BDG_OPEN2 1381
+#define ST_HDLL_FIRECAN 1310
+#define ST_HDLL_HAMMER 3205
+#define ST_HDLL_UP 1211
+#define ST_HDLR_DOWN 1199
+#define ST_HDLR_DOWN_GUM 3044
+#define ST_HDLR_GUM 1201
 #define ST_STR_RIGHT 1174
 
 // Scene 15
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index e2d7f88..2df5d1a 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -102,11 +102,30 @@ void sceneHandler13_openBridge() {
 }
 
 void sceneHandler13_testClose() {
-	warning("STUB: sceneHandler13_testClose()");
+	int id = g_vars->scene13_handleL->_statics->_staticsId;
+
+	if (id == ST_HDLL_UP)
+		chainQueue(QU_SC13_CLOSEFAIL, 1);
+	else if (id == ST_HDLL_FIRECAN || id == ST_HDLL_HAMMER)
+		chainQueue(QU_SC13_CLOSESUCCESS, 1);
 }
 
 void sceneHandler13_testOpen() {
-	warning("STUB: sceneHandler13_testOpen()");
+	switch (g_vars->scene13_handleR->_statics->_staticsId) {
+    case ST_HDLR_DOWN:
+		chainQueue(QU_SC13_OPENFAIL, 1);
+		break;
+
+    case ST_HDLR_DOWN_GUM:
+		chainQueue(QU_SC13_OPENSUCCESS, 1);
+		break;
+
+    case ST_HDLR_GUM:
+		g_vars->scene13_handleR->changeStatics2(ST_HDLR_DOWN_GUM);
+
+		chainQueue(QU_SC13_OPENSUCCESS, 1);
+		break;
+	}
 }
 
 void sceneHandler13_closeBridge() {


Commit: c0c8be7dce0f0109ec51d3ca6302165a6da91bc1
    https://github.com/scummvm/scummvm/commit/c0c8be7dce0f0109ec51d3ca6302165a6da91bc1
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:37:05-08:00

Commit Message:
FULLPIPE: Fix warning

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



diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp
index 7629252..70f0e06 100644
--- a/engines/fullpipe/scenes/scene11.cpp
+++ b/engines/fullpipe/scenes/scene11.cpp
@@ -80,7 +80,7 @@ void scene11_dudeSwingCallback(int *arg) {
 		}
 	}
 
-	if (oldarg - 45 >= 0 != *arg - 45 >= 0 && g_vars->scene11_arcadeIsOn) {
+	if ((oldarg - 45 >= 0 != *arg - 45 >= 0) && g_vars->scene11_arcadeIsOn) {
 		if (oldarg >= *arg)
 			g_fp->playSound(SND_11_031, 0);
 		else


Commit: 562d539db9ecb8690006236449c78335fab8f120
    https://github.com/scummvm/scummvm/commit/562d539db9ecb8690006236449c78335fab8f120
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-29T14:43:06-08:00

Commit Message:
FULLPIPE: implement sceneHandler13_uneatGum()/updateBridge()

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



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index dc50b56..5214c97 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -558,6 +558,7 @@ namespace Fullpipe {
 #define QU_SC13_OPENSUCCESS 3047
 #define QU_SC13_SHOWGUM 1216
 #define QU_STR_CHEW 1190
+#define QU_STR_PLUU 1189
 #define SND_13_018 3763
 #define SND_13_033 4685
 #define SND_13_034 4686
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index 2df5d1a..5689918 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -179,7 +179,18 @@ void sceneHandler13_openFast() {
 }
 
 void sceneHandler13_uneatGum() {
-	warning("STUB: sceneHandler13_uneatGum()");
+	BehaviorEntryInfo *beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW);
+
+	if (beh) {
+		beh->_percent = 0;
+		beh->_delay = 36;
+	}
+
+	beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_PLUU);
+	if (beh) {
+		beh->_percent = 0;
+		beh->_delay = 36;
+	}
 }
 
 void sceneHandler13_eatGum() {
@@ -192,7 +203,14 @@ void sceneHandler13_eatGum() {
 }
 
 void sceneHandler13_updateBridge() {
-	warning("STUB: sceneHandler13_updateBridge()");
+	MovGraphLink *lnk = getCurrSceneSc2MotionController()->getLinkByName(sO_Bridge);
+
+	if (lnk) {
+		if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted))
+			lnk->_flags |= 0x20000000;
+		else
+			lnk->_flags &= 0xDFFFFFFF;
+	}
 }
 
 void sceneHandler13_showGum() {






More information about the Scummvm-git-logs mailing list