diff options
Diffstat (limited to 'engines/fullpipe')
-rw-r--r-- | engines/fullpipe/constants.h | 1 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene08.cpp | 20 |
2 files changed, 19 insertions, 2 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index 49f9a33209..ee5bf249e3 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_LADDERD 1106 #define PIC_SC10_DTRUBA 974 #define PIC_SC10_LADDER 995 #define PIC_SCD_SEL 734 diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp index b6670b76c7..cb2762bc76 100644 --- a/engines/fullpipe/scenes/scene08.cpp +++ b/engines/fullpipe/scenes/scene08.cpp @@ -106,10 +106,26 @@ void scene08_setupMusic() { } int scene08_updateCursor() { - warning("STUB: scene08_updateCursor()"); - g_fp->updateCursorCommon(); + if (g_vars->scene08_var06) { + if (g_vars->scene08_var03) { + if (g_fp->_objectIdAtCursor == PIC_SC8_LADDERD && g_fp->_cursorId == PIC_CSR_ITN) + g_fp->_cursorId = PIC_CSR_GOU; + } else { + g_fp->_cursorId = -1; + } + } else { + if (g_fp->_objectIdAtCursor == PIC_SC8_LADDERD && g_fp->_cursorId == PIC_CSR_ITN) { + if (g_fp->_aniMan2->_oy >= 520) { + if (g_fp->_aniMan2->_oy <= 750) + g_fp->_cursorId = PIC_CSR_GOU; + } else { + g_fp->_cursorId = PIC_CSR_GOD; + } + } + } + return g_fp->_cursorId; } |