aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/scenes
diff options
context:
space:
mode:
authorEugene Sandulenko2014-03-28 23:27:21 +0200
committerEugene Sandulenko2014-03-28 23:27:38 +0200
commit620411bfebe72fb0f60c4d8f64558be088cff58d (patch)
tree4ca55886e0d2b37bb5d71f19d8e9c68e05ccf1e7 /engines/fullpipe/scenes
parentb8aca5c202012dd6121598f06aca6715cbd365ca (diff)
downloadscummvm-rg350-620411bfebe72fb0f60c4d8f64558be088cff58d.tar.gz
scummvm-rg350-620411bfebe72fb0f60c4d8f64558be088cff58d.tar.bz2
scummvm-rg350-620411bfebe72fb0f60c4d8f64558be088cff58d.zip
FULLPIPE: Implement sceneHandler29_shootersEscape()
Diffstat (limited to 'engines/fullpipe/scenes')
-rw-r--r--engines/fullpipe/scenes/scene29.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/engines/fullpipe/scenes/scene29.cpp b/engines/fullpipe/scenes/scene29.cpp
index 910868608d..27fc09adce 100644
--- a/engines/fullpipe/scenes/scene29.cpp
+++ b/engines/fullpipe/scenes/scene29.cpp
@@ -330,7 +330,30 @@ void sceneHandler29_sub05() {
}
void sceneHandler29_shootersEscape() {
- warning("STUB: sceneHandler29_shootersEscape()");
+ if (g_vars->scene29_var10) {
+ g_vars->scene29_var20 += 2;
+
+ g_fp->_aniMan->setOXY(g_vars->scene29_var20, g_vars->scene29_var21);
+
+ if (g_vars->scene29_var20 > 1310 && !g_vars->scene29_shooter1->_movement && !g_vars->scene29_shooter2->_movement
+ && g_vars->scene29_shooter1->_statics->_staticsId == ST_STR1_RIGHT) {
+ g_vars->scene29_var13 = 0;
+
+ g_vars->scene29_shooter1->changeStatics2(ST_STR1_STAND);
+ g_vars->scene29_shooter2->changeStatics2(ST_STR2_STAND);
+
+ chainQueue(QU_SC29_ESCAPE, 1);
+
+ g_vars->scene29_ass->queueMessageQueue(0);
+ g_vars->scene29_ass->hide();
+
+ g_fp->setObjectState(sO_LeftPipe_29, g_fp->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened));
+ }
+ } else if (g_vars->scene29_var09) {
+ g_vars->scene29_var20 -= 4;
+
+ g_fp->_aniMan->setOXY(g_vars->scene29_var20, g_vars->scene29_var21);
+ }
}
void sceneHandler29_sub07() {