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

sev- sev at scummvm.org
Wed Dec 4 22:48:54 CET 2013


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

Summary:
76eb512458 FULLPIPE: Implement sceneHandler04_takeKozyawka()
baf8420f6f FULLPIPE: Implement sceneHandler04_handTake()


Commit: 76eb512458e14772d9e7ffaa7b9633a5c7d0ceb8
    https://github.com/scummvm/scummvm/commit/76eb512458e14772d9e7ffaa7b9633a5c7d0ceb8
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-04T13:48:24-08:00

Commit Message:
FULLPIPE: Implement sceneHandler04_takeKozyawka()

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



diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp
index 98ded32..fff1e7e 100644
--- a/engines/fullpipe/scenes/scene04.cpp
+++ b/engines/fullpipe/scenes/scene04.cpp
@@ -474,14 +474,35 @@ void sceneHandler04_sub17() {
 }
 
 void sceneHandler04_takeBottle() {
-  g_vars->scene04_var02 = 1;
-  g_vars->scene04_hand->_priority = 5;
+	g_vars->scene04_var02 = 1;
+	g_vars->scene04_hand->_priority = 5;
 
-  g_fullpipe->setObjectState(sO_LowerPipe, g_fullpipe->getObjectEnumState(sO_LowerPipe, sO_IsOpened));
+	g_fullpipe->setObjectState(sO_LowerPipe, g_fullpipe->getObjectEnumState(sO_LowerPipe, sO_IsOpened));
 }
 
 void sceneHandler04_takeKozyawka() {
-	warning("sceneHandler04_takeKozyawka()");
+	if (g_vars->scene04_kozyawkiAni.size() > 0) {
+		if (g_vars->scene04_kozyawkiAni.size() == 1) 
+			g_vars->scene04_var19 = 1;
+
+		StaticANIObject *koz = g_vars->scene04_kozyawkiAni.front();
+		g_vars->scene04_kozyawkiAni.pop_front();
+
+		if (koz) {
+			koz->queueMessageQueue(0);
+			koz->hide();
+
+			g_vars->scene04_kozyawkiObjList.push_back(koz);
+
+			for (Common::List<GameObject *>::iterator it = g_vars->scene04_bottleObjList.begin(); it != g_vars->scene04_bottleObjList.end(); ++it)
+				if (*it == koz) {
+					g_vars->scene04_bottleObjList.erase(it);
+					break;
+				}
+
+			g_vars->scene04_var06 -= 2;
+		}
+	}
 }
 
 void sceneHandler04_testPlank(ExCommand *ex) {


Commit: baf8420f6f742ea9a6a45a3fe95dd900cd53ccd6
    https://github.com/scummvm/scummvm/commit/baf8420f6f742ea9a6a45a3fe95dd900cd53ccd6
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-04T13:48:24-08:00

Commit Message:
FULLPIPE: Implement sceneHandler04_handTake()

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



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 77eb83d..41800da 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -190,6 +190,9 @@ namespace Fullpipe {
 #define QU_EGTR_MD2_SHOW 4698
 #define QU_EGTR_MD1_SHOW 4697
 #define QU_EGTR_SLIMSHOW 4883
+#define QU_HND_TAKE0 1440
+#define QU_HND_TAKE1 1441
+#define QU_HND_TAKE2 1442
 #define QU_HND_TAKEBOTTLE 1443
 #define QU_IN2_DO 5144
 #define QU_INTR_FINISH 5138
diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp
index fff1e7e..0a0b804 100644
--- a/engines/fullpipe/scenes/scene04.cpp
+++ b/engines/fullpipe/scenes/scene04.cpp
@@ -443,8 +443,21 @@ void sceneHandler04_sub12() {
 	g_vars->scene04_var13 = 0;
 }
 
-void sceneHandler04_sub15() {
-	warning("sceneHandler04_sub15()");
+void sceneHandler04_handTake() {
+	g_vars->scene04_clock->changeStatics2(ST_CLK_CLOSED);
+
+	if (g_vars->scene04_kozyawkiAni.size()) {
+		if (g_vars->scene04_kozyawkiAni.size() == 1) {
+			chainQueue(QU_HND_TAKE1, 0);
+			g_vars->scene04_var19 = 0;
+		} else {
+			chainQueue((g_vars->scene04_kozyawkiAni.size() != 2) ? QU_HND_TAKEBOTTLE : QU_HND_TAKE2, 0);
+			g_vars->scene04_var19 = 0;
+		}
+	} else {
+		chainQueue(QU_HND_TAKE0, 0);
+		g_vars->scene04_var19 = 0;
+	}
 }
 
 void sceneHandler04_sub17() {
@@ -591,7 +604,7 @@ int sceneHandler04(ExCommand *ex) {
 		if (g_vars->scene04_var10)
 			sceneHandler04_sub1(0);
 
-		sceneHandler04_sub15();
+		sceneHandler04_handTake();
 		sceneHandler04_stopSound();
 		break;
 
@@ -784,7 +797,7 @@ int sceneHandler04(ExCommand *ex) {
 			if (g_vars->scene04_var10)
 				sceneHandler04_sub1(0);
 
-			sceneHandler04_sub15();
+			sceneHandler04_handTake();
 		}
 
 		break;






More information about the Scummvm-git-logs mailing list