diff options
-rw-r--r-- | engines/fullpipe/constants.h | 5 | ||||
-rw-r--r-- | engines/fullpipe/scenes.h | 2 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene04.cpp | 18 |
3 files changed, 20 insertions, 5 deletions
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index 0ca1dd503d..087a768156 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -46,6 +46,7 @@ namespace Fullpipe { #define ANI_PLANK 501 #define ANI_SC2_BOX 1020 #define ANI_SC4_BOOT 1035 +#define ANI_SC4_COIN 690 #define ANI_SPEAKER_4 3275 #define ANI_SPRING 542 #define MSG_CLICKBOTTLE 569 @@ -107,9 +108,11 @@ namespace Fullpipe { #define MV_IN1MAN_SLEEP 5111 #define MV_KZW_JUMP 558 #define MV_KZW_JUMPROTATE 561 +#define MV_BDG_OPEN 1379 #define MV_MAN_GOD 481 #define MV_MAN_GOLADDER 451 #define MV_MAN_GOLADDER2 2844 +#define MV_MAN_GOU 460 #define MV_MAN_LOOKUP 4773 #define MV_MAN_STARTLADDER 452 #define MV_MAN_STARTLADDER2 2842 @@ -118,7 +121,9 @@ namespace Fullpipe { #define MV_MAN_TOLADDER 448 #define MV_MAN_TOLADDER2 2841 #define MV_MAN_TURN_LU 486 +#define MV_PNK_WEIGHTLEFT 541 #define MV_PNK_WEIGHTRIGHT 502 +#define MV_SC4_COIN_default 1029 #define MV_SPK4_PLAY 3276 #define PIC_CMN_EVAL 3468 #define PIC_CSR_DEFAULT 4891 diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h index 4131fbb676..277beb0083 100644 --- a/engines/fullpipe/scenes.h +++ b/engines/fullpipe/scenes.h @@ -90,7 +90,7 @@ public: Common::Point scene04_jumpRotateKozyawki[20]; Common::Array<StaticANIObject *> scene04_kozyawkiObjList; - Common::Array<PictureObject *> scene04_bottleObjList; + Common::Array<GameObject *> scene04_bottleObjList; Common::Array<StaticANIObject *> scene04_kozyawkiAni; int scene04_ladder; diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp index 6db3359bd7..5e1454793f 100644 --- a/engines/fullpipe/scenes/scene04.cpp +++ b/engines/fullpipe/scenes/scene04.cpp @@ -251,7 +251,7 @@ void sceneHandler04_gotoLadder(int par) { } void sceneHandler04_lowerPlank() { - warning("sceneHandler04_lowerPlank()"); + g_vars->scene04_plank->startAnim(MV_PNK_WEIGHTRIGHT, 0, -1); } void sceneHandler04_manFromBottle() { @@ -259,11 +259,15 @@ void sceneHandler04_manFromBottle() { } void sceneHandler04_manToBottle() { - warning("sceneHandler04_manToBottle()"); + g_vars->scene04_bottleObjList.push_back(g_fullpipe->_aniMan); + g_vars->scene04_var20 = 5; + g_vars->scene04_var06 += 9; + g_fullpipe->_aniMan2 = g_fullpipe->_aniMan; + g_vars->scene04_var10 = 1; } void sceneHandler04_raisePlank() { - warning("sceneHandler04_raisePlank()"); + g_vars->scene04_plank->startAnim(MV_PNK_WEIGHTLEFT, 0, -1); } void sceneHandler04_shootKozyawka() { @@ -271,7 +275,13 @@ void sceneHandler04_shootKozyawka() { } void sceneHandler04_showCoin() { - warning("sceneHandler04_showCoin()"); + StaticANIObject *ani = g_fullpipe->_currentScene->getStaticANIObject1ById(ANI_SC4_COIN, -1); + + if (ani) { + ani->show1(MV_BDG_OPEN, MV_MAN_GOU, MV_SC4_COIN_default, 0); + + ani->_priority = 40; + } } void sceneHandler04_stopSound() { |