diff options
-rw-r--r-- | engines/fullpipe/constants.h | 1 | ||||
-rw-r--r-- | engines/fullpipe/scenes.cpp | 1 | ||||
-rw-r--r-- | engines/fullpipe/scenes.h | 1 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene11.cpp | 24 |
4 files changed, 22 insertions, 5 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index dd4d4e338b..2c93db9e69 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -503,6 +503,7 @@ namespace Fullpipe { #define MSG_SC11_SITSWINGER 5198 #define MV_KCH_START 1121 #define MV_MAN11_SWING_0 1109 +#define MV_MAN11_SWING_1 1111 #define PIC_SC11_HINT 5170 #define QU_SC11_MANFALL 3017 #define QU_SC11_PUTBOOT1 2709 diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp index aee494bb92..cd816f1d33 100644 --- a/engines/fullpipe/scenes.cpp +++ b/engines/fullpipe/scenes.cpp @@ -187,6 +187,7 @@ Vars::Vars() { scene11_var20 = 0; scene11_var21 = 0; scene11_var22 = 0; + scene11_var23 = 45; scene12_fly = 0; scene12_flyCountdown = 0; diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h index 582efa2271..cb6e45ef70 100644 --- a/engines/fullpipe/scenes.h +++ b/engines/fullpipe/scenes.h @@ -251,6 +251,7 @@ public: int scene11_var20; int scene11_var21; int scene11_var22; + int scene11_var23; int scene12_fly; int scene12_flyCountdown; diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp index dc9acfc9bd..1d5fc855c7 100644 --- a/engines/fullpipe/scenes/scene11.cpp +++ b/engines/fullpipe/scenes/scene11.cpp @@ -141,10 +141,6 @@ void scene11_initScene(Scene *sc) { g_fp->setArcadeOverlay(PIC_CSR_ARCADE5); } -void sceneHandler11_winArcade() { - warning("STUB: sceneHandler11_winArcade()"); -} - void sceneHandler11_restartMan() { chainObjQueue(0, QU_SC11_RESTARTMAN, 1); @@ -261,7 +257,15 @@ void sceneHandler11_sub02() { } void sceneHandler11_sub03() { - warning("STUB: sceneHandler11_sub03()"); + g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY); + g_vars->scene11_dudeOnSwing->_movement = 0; + g_vars->scene11_dudeOnSwing->show1(690, 215, MV_MAN11_SWING_1, 0); + g_vars->scene11_dudeOnSwing->startAnim(MV_MAN11_SWING_1, 0, -1); + g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex); + + g_vars->scene11_var17 = 1; + g_vars->scene11_var23 = 42; + g_vars->scene11_var09 = -(fabs(g_vars->scene11_var08) * 0.075 + 0.12); } void sceneHandler11_sub04() { @@ -288,6 +292,16 @@ void sceneHandler11_sub09() { warning("STUB: sceneHandler11_sub09()"); } +void sceneHandler11_winArcade() { + if (g_vars->scene11_var02) { + g_vars->scene11_var02 = 0; + + sceneHandler11_sub09(); + + g_fp->_gameLoader->preloadScene(SC_11, TrubaRight); + } +} + void sceneHandler11_sub10() { warning("STUB: sceneHandler11_sub10()"); } |