aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2014-03-10 23:16:01 +0200
committerEugene Sandulenko2014-03-10 23:19:16 +0200
commite1b3130f439ecb8e296df6da3ce4fcecf4633398 (patch)
tree25cb4b170f7bcfe69e82540ef94b979a6c25e806
parent9a319a9dbaf3ccff517f1d89b44b4b51ff1ae5f1 (diff)
downloadscummvm-rg350-e1b3130f439ecb8e296df6da3ce4fcecf4633398.tar.gz
scummvm-rg350-e1b3130f439ecb8e296df6da3ce4fcecf4633398.tar.bz2
scummvm-rg350-e1b3130f439ecb8e296df6da3ce4fcecf4633398.zip
FULLPIPE: Implement sceneHandler18and19_showBoyJump()
-rw-r--r--engines/fullpipe/constants.h3
-rw-r--r--engines/fullpipe/scenes/scene18and19.cpp22
2 files changed, 24 insertions, 1 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index e9712a1ca0..dae6b30839 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -887,8 +887,10 @@ namespace Fullpipe {
#define MSG_SC18_SHOWGIRLJUMPTO 1499
#define MSG_SC18_SHOWMANJUMP 1510
#define MSG_SC18_SHOWMANJUMPTO 1508
+#define MV_BOY18_JUMPFROM 1478
#define MV_BOY18_JUMPTO 1481
#define MV_GRL18_JUMPTO 1488
+#define MV_KSL_CALMDOWN 1476
#define MV_KSL_INBOY 1491
#define MV_KSL_INGIRL 1493
#define MV_KSL_INMAN 1504
@@ -914,6 +916,7 @@ namespace Fullpipe {
#define ST_KSL_JUMPGIRL 1494
#define ST_KSL_JUMPMAN 1505
#define ST_KSL_MAN 1503
+#define ST_KSL_REACT 1474
// Scene 19
#define ANI_CORDIE 1529
diff --git a/engines/fullpipe/scenes/scene18and19.cpp b/engines/fullpipe/scenes/scene18and19.cpp
index 1b2c3c5e53..5e5d128c5b 100644
--- a/engines/fullpipe/scenes/scene18and19.cpp
+++ b/engines/fullpipe/scenes/scene18and19.cpp
@@ -441,7 +441,27 @@ void sceneHandler18and19_showBoyJumpTo() {
}
void sceneHandler18and19_showBoyJump() {
- warning("STUB: sceneHandler18and19_showBoyJump()");
+ StaticANIObject *ani = g_vars->scene18_var07[g_vars->scene18_var32]->ani;
+ int x, y;
+
+ if (ani->_movement) {
+ x = ani->_movement->_ox;
+ y = ani->_movement->_oy;
+ } else {
+ x = ani->_ox;
+ y = ani->_oy;
+ }
+
+ g_vars->scene18_boy->show1(x - 48, y + 8, MV_BOY18_JUMPFROM, 0);
+ g_vars->scene18_boy->_priority = 50;
+ g_vars->scene18_boy->startAnim(MV_BOY18_JUMPFROM, 0, -1);
+
+ g_vars->scene18_var07[g_vars->scene18_var32]->sflags = 1;
+
+ g_vars->scene18_var07[g_vars->scene18_var32]->ani->changeStatics2(ST_KSL_REACT);
+ g_vars->scene18_var07[g_vars->scene18_var32]->ani->startAnim(MV_KSL_CALMDOWN, 0, -1);
+
+ g_vars->scene18_var26 = 1;
}
void sceneHandler18and19_boyJumpTo() {