diff options
Diffstat (limited to 'engines/fullpipe')
-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/scene14.cpp | 22 |
4 files changed, 24 insertions, 1 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index 2b1d0104cb..a2e258658b 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -608,6 +608,7 @@ namespace Fullpipe { #define QU_SC14_ENDARCADE 1391 #define QU_SC14_ENTERLIFT 1225 #define QU_SC14_EXITLIFT 1226 +#define QU_SC14_STARTARCADE 1390 // Scene 15 #define ANI_BOOT_15 4779 diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp index 31753b90af..80fe623dab 100644 --- a/engines/fullpipe/scenes.cpp +++ b/engines/fullpipe/scenes.cpp @@ -222,6 +222,7 @@ Vars::Vars() { scene14_var21 = 0; scene14_var22 = 0; scene14_var23 = 0; + scene14_var24 = 0; scene15_chantingCountdown = 0; scene15_plusminus = 0; diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h index db7aa12372..c84a6715c3 100644 --- a/engines/fullpipe/scenes.h +++ b/engines/fullpipe/scenes.h @@ -298,6 +298,7 @@ public: int scene14_var21; int scene14_var22; int scene14_var23; + int scene14_var24; int scene15_chantingCountdown; StaticANIObject *scene15_plusminus; diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp index 94b6d23fa0..0e9ddf22cf 100644 --- a/engines/fullpipe/scenes/scene14.cpp +++ b/engines/fullpipe/scenes/scene14.cpp @@ -201,7 +201,27 @@ void sceneHandler14_hideBallLast() { } void sceneHandler14_startArcade() { - warning("STUB: sceneHandler14_startArcade()"); + g_vars->scene14_var03 = 1; + g_vars->scene14_var06 = 1; + + if (g_fp->_aniMan->_movement) { + g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_fp->_aniMan->setOXY(1237, 451); + g_fp->_aniMan->_priority = 25; + } + + getCurrSceneSc2MotionController()->clearEnabled(); + getGameLoaderInteractionController()->disableFlag24(); + + g_fp->_aniMan2 = 0; + g_vars->scene14_var01 = 50; + g_vars->scene14_var07 = 100; + g_vars->scene14_var24 = 4; + g_vars->scene14_pink = 0; + + chainQueue(QU_SC14_STARTARCADE, 0); + + g_fp->_updateScreenCallback = sceneHandler14_updateScreenCallback; } void sceneHandler14_endArcade() { |