From 4bc2f258a4b5b320a3176071bc2948b987ff00f9 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 18 Dec 2013 15:41:05 +0200 Subject: FULLPIPE: Implement sceneHandler06_sub03() --- engines/fullpipe/constants.h | 3 +++ engines/fullpipe/scenes/scene06.cpp | 13 ++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index d449c01ff5..01ab47afdc 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -35,6 +35,7 @@ namespace Fullpipe { #define ANI_DOMINO_3 2732 #define ANI_DADAYASHIK 306 #define ANI_EGGEATER 334 +#define ANI_EGGIE 4929 #define ANI_HAND 601 #define ANI_HANDLE 622 #define ANI_IN1MAN 5110 @@ -241,6 +242,8 @@ namespace Fullpipe { #define PIC_SCD_SEL 734 #define QU_BALL_WALKL 4920 #define QU_BALL_WALKR 4919 +#define QU_EGG6_GOL 4936 +#define QU_EGG6_GOR 4935 #define QU_EGTR_MD2_SHOW 4698 #define QU_EGTR_MD1_SHOW 4697 #define QU_EGTR_SLIMSHOW 4883 diff --git a/engines/fullpipe/scenes/scene06.cpp b/engines/fullpipe/scenes/scene06.cpp index 3b72030e15..f1a6e77b52 100644 --- a/engines/fullpipe/scenes/scene06.cpp +++ b/engines/fullpipe/scenes/scene06.cpp @@ -223,7 +223,18 @@ void sceneHandler06_throwBall() { } void sceneHandler06_sub03() { - warning("STUB: sceneHandler06_sub03()"); + if (15 - g_vars->scene06_numBallsGiven >= 4 && !g_fullpipe->_rnd->getRandomNumber(9)) { + StaticANIObject *ani = g_fullpipe->_currentScene->getStaticANIObject1ById(ANI_EGGIE, -1); + if (!ani || !(ani->_flags & 4)) { + if (g_vars->scene06_var15) + chainQueue(QU_EGG6_GOR, 0); + else + chainQueue(QU_EGG6_GOL, 0); + + g_vars->scene06_var14 = 0; + g_vars->scene06_var15 = (g_vars->scene06_var15 == 0); + } + } } void sceneHandler06_sub10() { -- cgit v1.2.3