aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2014-01-05 10:53:17 +0200
committerEugene Sandulenko2014-01-05 13:20:47 +0200
commit68fea7ef51b48a41ed057aefdcb1bc5f1f35fd90 (patch)
tree01fa7cdfaf6642c65bb08efdf7c3565a872c4a13
parent0066d0270698faece9a155ef1bd6f49fb847125f (diff)
downloadscummvm-rg350-68fea7ef51b48a41ed057aefdcb1bc5f1f35fd90.tar.gz
scummvm-rg350-68fea7ef51b48a41ed057aefdcb1bc5f1f35fd90.tar.bz2
scummvm-rg350-68fea7ef51b48a41ed057aefdcb1bc5f1f35fd90.zip
FULLPIPE: Plug scene25 in
-rw-r--r--engines/fullpipe/constants.h8
-rw-r--r--engines/fullpipe/module.mk1
-rw-r--r--engines/fullpipe/scenes.cpp13
-rw-r--r--engines/fullpipe/scenes.h13
-rw-r--r--engines/fullpipe/scenes/scene25.cpp18
5 files changed, 48 insertions, 5 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 9eb3147903..cd51fea186 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -861,6 +861,14 @@ namespace Fullpipe {
#define ST_DRP24_EMPTY 3507
#define ST_WTR24_FLOWLOWER 1843
+// Scene 25
+#define ANI_BOARD25 1898
+#define ANI_DROP_25 3499
+#define ANI_INV_BOARD 1872
+#define ANI_WATER25 1856
+#define SND_25_006 4059
+#define SND_25_029 5174
+
// Scene 30
#define ANI_LEG 2322
#define MSG_SC30_UPDATEPATH 2358
diff --git a/engines/fullpipe/module.mk b/engines/fullpipe/module.mk
index 5d426eeaf8..3d781e66b4 100644
--- a/engines/fullpipe/module.mk
+++ b/engines/fullpipe/module.mk
@@ -45,6 +45,7 @@ MODULE_OBJS = \
scenes/scene22.o \
scenes/scene23.o \
scenes/scene24.o \
+ scenes/scene25.o \
scenes/scene30.o \
scenes/scene31.o \
scenes/scene36.o \
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 58642382b1..67035b8ff4 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -281,6 +281,19 @@ Vars::Vars() {
scene24_jet = 0;
scene24_drop = 0;
+ scene25_var01 = 0;
+ scene25_var02 = 0;
+ scene25_var03 = 0;
+ scene25_var04 = 0;
+ scene25_water = 0;
+ scene25_board = 0;
+ scene25_drop = 0;
+ scene25_var05 = 0;
+ scene25_var06 = 0;
+ scene25_var07 = 0;
+ scene25_var08 = 0;
+ scene25_var09 = 0;
+
scene30_leg = 0;
scene30_liftFlag = 1;
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 4e341d31af..a7653d001b 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -395,6 +395,19 @@ public:
StaticANIObject *scene24_jet;
StaticANIObject *scene24_drop;
+ int scene25_var01;
+ int scene25_var02;
+ int scene25_var03;
+ int scene25_var04;
+ StaticANIObject *scene25_water;
+ StaticANIObject *scene25_board;
+ StaticANIObject *scene25_drop;
+ int scene25_var05;
+ int scene25_var06;
+ int scene25_var07;
+ int scene25_var08;
+ int scene25_var09;
+
StaticANIObject *scene30_leg;
int scene30_liftFlag;
diff --git a/engines/fullpipe/scenes/scene25.cpp b/engines/fullpipe/scenes/scene25.cpp
index c156850511..a38c104835 100644
--- a/engines/fullpipe/scenes/scene25.cpp
+++ b/engines/fullpipe/scenes/scene25.cpp
@@ -36,14 +36,22 @@
namespace Fullpipe {
+void scene25_showBoardOnRightFar() {
+ warning("STUB: scene25_showBoardOnRightFar()");
+}
+
+void scene25_showBoardOnRightClose() {
+ warning("STUB: scene25_showBoardOnRightClose()");
+}
+
void scene25_initScene(Scene *sc, int entranceId) {
g_vars->scene25_var01 = 200;
g_vars->scene25_var02 = 200;
g_vars->scene25_var03 = 300;
g_vars->scene25_var04 = 300;
- g_vars->scene25_water = Scene_getStaticANIObject1ById(sc, ANI_WATER25, -1);
- g_vars->scene25_board = Scene_getStaticANIObject1ById(sc, ANI_BOARD25, -1);
- g_vars->scene25_drop = Scene_getStaticANIObject1ById(sc, ANI_DROP_25, -1);
+ g_vars->scene25_water = sc->getStaticANIObject1ById(ANI_WATER25, -1);
+ g_vars->scene25_board = sc->getStaticANIObject1ById(ANI_BOARD25, -1);
+ g_vars->scene25_drop = sc->getStaticANIObject1ById(ANI_DROP_25, -1);
g_vars->scene25_water->setAlpha(0xa0);
g_vars->scene25_drop->setAlpha(0xa0);
g_vars->scene25_var05 = 0;
@@ -55,7 +63,7 @@ void scene25_initScene(Scene *sc, int entranceId) {
} else {
g_vars->scene25_var06 = 1;
- playSound(SND_25_006, 1);
+ g_fp->playSound(SND_25_006, 1);
}
int boardState = g_fp->getObjectState(sO_Board_25);
@@ -64,7 +72,7 @@ void scene25_initScene(Scene *sc, int entranceId) {
if (boardState == g_fp->getObjectEnumState(sO_Board_25, sO_FarAway)) {
scene25_showBoardOnRightFar();
- playSound(SND_25_029, 0);
+ g_fp->playSound(SND_25_029, 0);
g_vars->scene25_var07 = 0;
} else {