aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/fullpipe/constants.h1
-rw-r--r--engines/fullpipe/scenes/scene38.cpp10
2 files changed, 10 insertions, 1 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index a4aef5a5ea..1d1dbeece8 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1319,6 +1319,7 @@ namespace Fullpipe {
#define ST_GLV_HAMMER 2156
#define ST_GLV_NOHAMMER 2159
#define ST_MLS_LEFT2 2291
+#define QU_DLD_DENY 2218
#define QU_GLV_TOSMALL 2208
#define QU_GLV_TOSMALL_NOHMR 2209
#define QU_MLS_TURNR 2221
diff --git a/engines/fullpipe/scenes/scene38.cpp b/engines/fullpipe/scenes/scene38.cpp
index 13c5dea262..cdd0da05e6 100644
--- a/engines/fullpipe/scenes/scene38.cpp
+++ b/engines/fullpipe/scenes/scene38.cpp
@@ -102,7 +102,15 @@ void sceneHandler38_postHammerKick() {
}
void sceneHandler38_propose() {
- warning("STUB: sceneHandler38_propose()");
+ if (!g_vars->scene38_tally->_movement) {
+ if (g_vars->scene38_tally->_flags & 4) {
+ if (!(g_vars->scene38_tally->_flags & 2) && g_vars->scene38_var08 > 0
+ && g_fp->_rnd->getRandomNumber(32767) < 32767) {
+ chainQueue(QU_DLD_DENY, 0);
+ g_vars->scene38_var08 = 0;
+ }
+ }
+ }
}
void sceneHandler38_point() {