aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2013-11-21 08:43:16 -0800
committerEugene Sandulenko2013-11-21 08:43:16 -0800
commit08f8bc8b6f9d132183b395fd858b7886cf5262e9 (patch)
treecb1591a65bc9f2f68ed80521ea2f2df53c41810f
parent91713e695e22dafe1baeed0348b10e84c389e95d (diff)
downloadscummvm-rg350-08f8bc8b6f9d132183b395fd858b7886cf5262e9.tar.gz
scummvm-rg350-08f8bc8b6f9d132183b395fd858b7886cf5262e9.tar.bz2
scummvm-rg350-08f8bc8b6f9d132183b395fd858b7886cf5262e9.zip
FULLPIPE: Implement scene04_updateCursor()
-rw-r--r--engines/fullpipe/constants.h3
-rw-r--r--engines/fullpipe/scenes/scene04.cpp37
2 files changed, 40 insertions, 0 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index e4576a17b4..a2e8121f8f 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -141,7 +141,10 @@ namespace Fullpipe {
#define PIC_SC3_LADDER 1102
#define PIC_SC4_BOTTLE 568
#define PIC_SC4_BOTTLE2 2936
+#define PIC_SC4_DOWNTRUBA 619
+#define PIC_SC4_LRTRUBA 616
#define PIC_SC4_MASK 585
+#define PIC_SC4_PLANK 5183
#define PIC_SCD_SEL 734
#define QU_EGTR_MD2_SHOW 4698
#define QU_EGTR_MD1_SHOW 4697
diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp
index c43bfe3935..3699defeca 100644
--- a/engines/fullpipe/scenes/scene04.cpp
+++ b/engines/fullpipe/scenes/scene04.cpp
@@ -174,4 +174,41 @@ void scene04_initScene(Scene *sc) {
g_fullpipe->initArcadeKeys("SC_4");
}
+bool sceneHandler04_friesAreWalking() {
+ warning("STUB: sceneHandler04_friesAreWalking()");
+
+ return false;
+}
+
+int scene04_updateCursor() {
+ g_fullpipe->updateCursorCommon();
+
+ if (g_fullpipe->_objectIdAtCursor == PIC_SC4_LRTRUBA) {
+ if (!g_vars->scene04_var19) {
+ g_fullpipe->_cursorId = PIC_CSR_DEFAULT;
+
+ return g_fullpipe->_cursorId;
+ }
+ } else if (g_fullpipe->_objectIdAtCursor == ANI_PLANK || g_fullpipe->_objectIdAtCursor == PIC_SC4_PLANK) {
+ if (g_fullpipe->_objectIdAtCursor == ANI_PLANK && g_fullpipe->_cursorId != PIC_CSR_ITN)
+ return g_fullpipe->_cursorId;
+
+ if (g_fullpipe->_objectIdAtCursor == ANI_PLANK || (g_fullpipe->_objectIdAtCursor == PIC_SC4_PLANK && g_fullpipe->_cursorId == PIC_CSR_DEFAULT)) {
+ if (sceneHandler04_friesAreWalking()) {
+ g_fullpipe->_cursorId = PIC_CSR_ARCADE1;
+ return g_fullpipe->_cursorId;
+ }
+ if (g_vars->scene04_soundPlaying) {
+ g_fullpipe->_cursorId = PIC_CSR_DEFAULT;
+ return g_fullpipe->_cursorId;
+ }
+ }
+ }
+
+ if (g_fullpipe->_objectIdAtCursor == PIC_CSR_ITN && g_fullpipe->_objectIdAtCursor == PIC_SC4_DOWNTRUBA)
+ g_fullpipe->_cursorId = PIC_CSR_GOD;
+
+ return g_fullpipe->_cursorId;
+}
+
} // End of namespace Fullpipe