diff options
author | Eugene Sandulenko | 2013-12-21 17:18:06 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-12-21 17:18:06 +0200 |
commit | cba54cce9821dcfbabce18ed2c6ca995de4525dd (patch) | |
tree | 4e955d50c224c219c3626a22de58c668293fc856 /engines/fullpipe | |
parent | ede3e0c3f84b1e7114226d90cb40f585a5feaa90 (diff) | |
download | scummvm-rg350-cba54cce9821dcfbabce18ed2c6ca995de4525dd.tar.gz scummvm-rg350-cba54cce9821dcfbabce18ed2c6ca995de4525dd.tar.bz2 scummvm-rg350-cba54cce9821dcfbabce18ed2c6ca995de4525dd.zip |
FULLPIPE: Plug scene10 in
Diffstat (limited to 'engines/fullpipe')
-rw-r--r-- | engines/fullpipe/constants.h | 13 | ||||
-rw-r--r-- | engines/fullpipe/module.mk | 1 | ||||
-rw-r--r-- | engines/fullpipe/scenes.cpp | 7 | ||||
-rw-r--r-- | engines/fullpipe/scenes.h | 7 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene10.cpp | 60 |
5 files changed, 66 insertions, 22 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index 984e024a26..49f9a33209 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -39,6 +39,7 @@ namespace Fullpipe { #define ANI_DADAYASHIK 306 #define ANI_EGGEATER 334 #define ANI_EGGIE 4929 +#define ANI_GUM 978 #define ANI_HAND 601 #define ANI_HANDLE 622 #define ANI_HOOLIGAN 808 @@ -57,8 +58,11 @@ namespace Fullpipe { #define ANI_MAMASHA 656 #define ANI_MAMASHA_4 660 #define ANI_MAN 322 +#define ANI_NADUVATEL 944 #define ANI_NEWBALL 1073 #define ANI_OTMOROZ 419 +#define ANI_PACHKA 975 +#define ANI_PACHKA2 3008 #define ANI_PLANK 501 #define ANI_PLUSMINUS 2938 #define ANI_SC2_BOX 1020 @@ -145,6 +149,11 @@ namespace Fullpipe { #define MSG_SC8_HIDELADDER_D 1107 #define MSG_SC8_RESUMEFLIGHT 784 #define MSG_SC8_STANDUP 2976 +#define MSG_SC10_CLICKGUM 992 +#define MSG_SC10_HIDEGUM 993 +#define MSG_SC10_LADDERTOBACK 3002 +#define MSG_SC10_LADDERTOFORE 3004 +#define MSG_SC10_SHOWGUM 994 #define MSG_GOTOLADDER 618 #define MSG_SHAKEBOTTLE 584 #define MSG_SHOOTKOZAW 557 @@ -278,6 +287,8 @@ namespace Fullpipe { #define PIC_SC6_LADDER 1104 #define PIC_SC8_ARCADENOW 1043 #define PIC_SC8_LADDER 754 +#define PIC_SC10_DTRUBA 974 +#define PIC_SC10_LADDER 995 #define PIC_SCD_SEL 734 #define QU_BALL_WALKL 4920 #define QU_BALL_WALKR 4919 @@ -318,6 +329,8 @@ namespace Fullpipe { #define QU_SC6_FALLBALL 2690 #define QU_SC6_SHOWHANDLE 1689 #define QU_SC6_SHOWNEXTBALL 2689 +#define QU_SC10_ENTERLIFT 1067 +#define QU_SC10_EXITLIFT 2809 #define SC_1 301 #define SC_10 653 #define SC_11 654 diff --git a/engines/fullpipe/module.mk b/engines/fullpipe/module.mk index d3af88d242..465a0130c2 100644 --- a/engines/fullpipe/module.mk +++ b/engines/fullpipe/module.mk @@ -32,6 +32,7 @@ MODULE_OBJS = \ scenes/scene06.o \ scenes/scene07.o \ scenes/scene08.o \ + scenes/scene10.o \ scenes/sceneDbg.o \ scenes/sceneIntro.o diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp index b8a88eb484..d820bc0d14 100644 --- a/engines/fullpipe/scenes.cpp +++ b/engines/fullpipe/scenes.cpp @@ -155,6 +155,13 @@ Vars::Vars() { scene08_var07 = 0; scene08_var08 = 0; + scene10_gum = 0; + scene10_packet = 0; + scene10_packet2 = 0; + scene10_inflater = 0; + scene10_ladder = 0; + scene10_hasGum = 0; + selector = 0; } diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h index 24fd1fce4c..7db6ff1e7b 100644 --- a/engines/fullpipe/scenes.h +++ b/engines/fullpipe/scenes.h @@ -201,6 +201,13 @@ public: int scene08_var07; int scene08_var08; + StaticANIObject *scene10_gum; + StaticANIObject *scene10_packet; + StaticANIObject *scene10_packet2; + StaticANIObject *scene10_inflater; + PictureObject *scene10_ladder; + int scene10_hasGum; + PictureObject *selector; }; diff --git a/engines/fullpipe/scenes/scene10.cpp b/engines/fullpipe/scenes/scene10.cpp index 444b51f0a2..7cb277928d 100644 --- a/engines/fullpipe/scenes/scene10.cpp +++ b/engines/fullpipe/scenes/scene10.cpp @@ -30,15 +30,16 @@ #include "fullpipe/statics.h" #include "fullpipe/behavior.h" +#include "fullpipe/interaction.h" namespace Fullpipe { void scene10_initScene(Scene *sc) { - g_vars->scene10_gum = sc->getStaticANIObject1ById(sc, ANI_GUM, -1); - g_vars->scene10_packet = sc->getStaticANIObject1ById(sc, ANI_PACHKA, -1); - g_vars->scene10_packet2 = sc->getStaticANIObject1ById(sc, ANI_PACHKA2, -1); - g_vars->scene10_inflater = sc->getStaticANIObject1ById(sc, ANI_NADUVATEL, -1); - g_vars->scene10_ladder = sc->getPictureObjectById(sc, PIC_SC10_LADDER, 0); + g_vars->scene10_gum = sc->getStaticANIObject1ById(ANI_GUM, -1); + g_vars->scene10_packet = sc->getStaticANIObject1ById(ANI_PACHKA, -1); + g_vars->scene10_packet2 = sc->getStaticANIObject1ById(ANI_PACHKA2, -1); + g_vars->scene10_inflater = sc->getStaticANIObject1ById(ANI_NADUVATEL, -1); + g_vars->scene10_ladder = sc->getPictureObjectById(PIC_SC10_LADDER, 0); g_fp->lift_setButton(sO_Level1, ST_LBN_1N); g_fp->lift_sub5(sc, QU_SC10_ENTERLIFT, QU_SC10_EXITLIFT); @@ -51,25 +52,38 @@ void scene10_initScene(Scene *sc) { } } +void sceneHandler10_clickGum() { + warning("STUB: sceneHandler10_clickGum()"); +} + +void sceneHandler10_hideGum() { + warning("STUB: sceneHandler10_hideGum()"); +} + +void sceneHandler10_showGum() { + warning("STUB: sceneHandler10_showGum()"); +} + + int sceneHandler10(ExCommand *ex) { - if (ex->msg._messageKind != 17) + if (ex->_messageKind != 17) return 0; switch(ex->_messageNum) { case MSG_LIFT_CLOSEDOOR: - lift_closedoorSeq(); + g_fp->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - lift_exitSeq(ex); + g_fp->lift_exitSeq(ex); break; case MSG_LIFT_STARTEXITQUEUE: - lift_startExitQueue(); + g_fp->lift_startExitQueue(); break; case MSG_LIFT_CLICKBUTTON: - lift_animation3(); + g_fp->lift_animation3(); break; case MSG_SC10_LADDERTOBACK: @@ -81,7 +95,7 @@ int sceneHandler10(ExCommand *ex) { break; case MSG_LIFT_GO: - lift_goAnimation(); + g_fp->lift_goAnimation(); break; case MSG_SC10_CLICKGUM: @@ -99,24 +113,26 @@ int sceneHandler10(ExCommand *ex) { break; case 64: - lift_sub05(ex); + g_fp->lift_sub05(ex); break; case 29: - if (g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC10_LADDER) { - handleObjectInteraction(g_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC10_DTRUBA, 0), ex->_keyCode); - ex->_messageKind = 0; + { + if (g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC10_LADDER) { + handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC10_DTRUBA, 0), ex->_keyCode); + ex->_messageKind = 0; - return 0; - } + return 0; + } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); + StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); - if (ani && ani->_id == ANI_LIFTBUTTON) { - lift_sub1(ani); - ex->_messageKind = 0; + if (ani && ani->_id == ANI_LIFTBUTTON) { + g_fp->lift_sub1(ani); + ex->_messageKind = 0; - return 0; + return 0; + } } break; |