From e2325f022be85750ae6434dbae38adbbd3f8e095 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sun, 2 Oct 2016 12:37:45 +0200 Subject: FULLPIPE: Fix tube logic on scene37 --- engines/fullpipe/scenes/scene37.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'engines/fullpipe') diff --git a/engines/fullpipe/scenes/scene37.cpp b/engines/fullpipe/scenes/scene37.cpp index 31b38c24ce..d4ecebca18 100644 --- a/engines/fullpipe/scenes/scene37.cpp +++ b/engines/fullpipe/scenes/scene37.cpp @@ -177,12 +177,19 @@ void sceneHandler37_updateRing(int ringNum) { g_vars->scene37_pipeIsOpen = true; - for (uint j = 0; j < g_vars->scene37_rings.size(); j++) { - for (int i = 0; i < g_vars->scene37_rings[j]->numSubRings; i++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[j]->subRings[i]); + for (uint i = 0; i < g_vars->scene37_rings.size(); i++) { + for (int j = 0; j < g_vars->scene37_rings[i]->numSubRings; j++) { + ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[i]->subRings[j]); - if ((ani->_movement && ani->_movement->_id == MV_RNG_CLOSE) || ani->_statics->_staticsId == ST_RNG_CLOSED2) - g_vars->scene37_pipeIsOpen = false; + debugC(2, kDebugSceneLogic, "ring[%d][%d]: mov: %d st: %d", i, j, (ani->_movement ? ani->_movement->_id : 0), ani->_statics->_staticsId); + + if (ani->_movement) { + if (ani->_movement->_id == MV_RNG_CLOSE) + g_vars->scene37_pipeIsOpen = false; + } else { + if (ani->_statics->_staticsId == ST_RNG_CLOSED2) + g_vars->scene37_pipeIsOpen = false; + } } } -- cgit v1.2.3