From 8862be264b4ed6b0d67cc969f2a88d076872f226 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Thu, 19 Dec 2013 18:42:35 +0200 Subject: FULLPIPE: Implement sceneHandler07_openLuke() --- engines/fullpipe/constants.h | 1 + engines/fullpipe/scenes/scene07.cpp | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'engines/fullpipe') diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index b8f0fa9b82..fdf0874861 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -403,6 +403,7 @@ namespace Fullpipe { #define ST_LBN_9N 2777 #define ST_LBN_9P 2778 #define ST_LUK_CLOSED 805 +#define ST_LUK_OPEN 806 #define ST_MAN_GOLADDER 450 #define ST_MAN_GOLADDER2 2843 #define ST_MAN_EMPTY 476 diff --git a/engines/fullpipe/scenes/scene07.cpp b/engines/fullpipe/scenes/scene07.cpp index c0b8b75c93..60d6a9b3df 100644 --- a/engines/fullpipe/scenes/scene07.cpp +++ b/engines/fullpipe/scenes/scene07.cpp @@ -55,7 +55,20 @@ void scene07_initScene(Scene *sc) { } void sceneHandler07_openLuke() { - warning("STUB: sceneHandler07_openLuke()"); + StaticANIObject *luke = g_fullpipe->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1); + + luke->changeStatics2(ST_LUK_OPEN); + luke->show1(-1, -1, -1, 0); + + if (g_vars->scene07_lukeAnim) { + g_vars->scene07_lukeAnim->_percent = g_vars->scene07_lukePercent; + } else { + StaticANIObject *ani = g_fullpipe->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1); + + g_vars->scene07_lukeAnim = g_fullpipe->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(ani, ST_CST_HANDLELESS, QU_CST_CLOSELUKE); + + g_vars->scene07_lukeAnim->_percent = g_vars->scene07_lukePercent; + } } void sceneHandler07_closeLuke() { -- cgit v1.2.3