diff options
author | Eugene Sandulenko | 2013-12-22 00:51:13 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-12-22 00:58:42 +0200 |
commit | bccb4d8f00b6f5abf404bcabbd53817c4d407a83 (patch) | |
tree | a888adbfe855ac01b7c265f149c8bfad532c476a /engines | |
parent | c3ee5b4fed3558c42e3637a589159cb2faeb1df3 (diff) | |
download | scummvm-rg350-bccb4d8f00b6f5abf404bcabbd53817c4d407a83.tar.gz scummvm-rg350-bccb4d8f00b6f5abf404bcabbd53817c4d407a83.tar.bz2 scummvm-rg350-bccb4d8f00b6f5abf404bcabbd53817c4d407a83.zip |
FULLPIPE: More code to scene08
Diffstat (limited to 'engines')
-rw-r--r-- | engines/fullpipe/constants.h | 2 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene08.cpp | 35 |
2 files changed, 28 insertions, 9 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index ee5bf249e3..a55bfc8c4c 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -287,6 +287,7 @@ namespace Fullpipe { #define PIC_SC6_LADDER 1104 #define PIC_SC8_ARCADENOW 1043 #define PIC_SC8_LADDER 754 +#define PIC_SC8_LADDER_D 755 #define PIC_SC8_LADDERD 1106 #define PIC_SC10_DTRUBA 974 #define PIC_SC10_LADDER 995 @@ -330,6 +331,7 @@ namespace Fullpipe { #define QU_SC6_FALLBALL 2690 #define QU_SC6_SHOWHANDLE 1689 #define QU_SC6_SHOWNEXTBALL 2689 +#define QU_SC8_STANDUP 2975 #define QU_SC10_ENTERLIFT 1067 #define QU_SC10_EXITLIFT 2809 #define SC_1 301 diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp index d3e81cbe0d..a523dd94c0 100644 --- a/engines/fullpipe/scenes/scene08.cpp +++ b/engines/fullpipe/scenes/scene08.cpp @@ -129,16 +129,22 @@ int scene08_updateCursor() { return g_fp->_cursorId; } -void sceneHandler08_winArcade() { - warning("STUB: sceneHandler08_winArcade()"); -} - void sceneHandler08_enterUp() { warning("STUB: sceneHandler08_enterUp()"); } +void sceneHandler08_winArcade() { + if (g_vars->scene08_var06) { + g_vars->scene08_var06 = 0; + g_fp->_sceneRect.top = 0; + g_fp->_sceneRect.bottom = 600; + + sceneHandler08_enterUp(); + } +} + void sceneHandler08_hideLadder() { - warning("STUB: sceneHandler08_hideLadder()"); + g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER_D, 0)->_flags &= 0xFFFB; } void sceneHandler08_arcadeNow() { @@ -153,7 +159,10 @@ void sceneHandler08_arcadeNow() { } void sceneHandler08_resumeFlight() { - warning("STUB: sceneHandler08_resumeFlight()"); + g_vars->scene08_var08 = 3; + g_vars->scene08_var04 = -39; + g_vars->scene08_var01 = 1; + g_vars->scene08_var07 = 0; } void sceneHandler08_startArcade() { @@ -201,11 +210,19 @@ void sceneHandler08_sitDown() { } void sceneHandler08_standUp() { - warning("STUB: sceneHandler08_standUp()"); + chainQueue(QU_SC8_STANDUP, 1); + g_vars->scene08_var03 = 0; } -void sceneHandler08_updateScreenCallback() { - warning("STUB: sceneHandler08_updateScreenCallback()"); +int sceneHandler08_updateScreenCallback() { + int res; + + res = g_fp->drawArcadeOverlay(g_vars->scene08_var06); + + if (!res) + g_fp->_updateScreenCallback = 0; + + return res; } int sceneHandler08(ExCommand *cmd) { |