From 583090a6238ca08996bfdfc10e26d616ab441f11 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sat, 7 Dec 2013 00:01:59 +0200 Subject: FULLPIPE: Implement sceneHandler04_goClock() --- engines/fullpipe/constants.h | 1 + engines/fullpipe/fullpipe.h | 1 + engines/fullpipe/scenes/scene04.cpp | 19 ++++++++++++++++--- engines/fullpipe/sound.cpp | 4 ++++ 4 files changed, 22 insertions(+), 3 deletions(-) (limited to 'engines/fullpipe') diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h index 41800dab13..60ca0814f9 100644 --- a/engines/fullpipe/constants.h +++ b/engines/fullpipe/constants.h @@ -202,6 +202,7 @@ namespace Fullpipe { #define QU_PNK_CLICK 550 #define QU_SC3_ENTERLIFT 2779 #define QU_SC3_EXITLIFT 2808 +#define QU_SC4_GOCLOCK 595 #define QU_SC4_MANFROMBOTTLE 2851 #define SC_1 301 #define SC_10 653 diff --git a/engines/fullpipe/fullpipe.h b/engines/fullpipe/fullpipe.h index 00d2863c94..84354e5353 100644 --- a/engines/fullpipe/fullpipe.h +++ b/engines/fullpipe/fullpipe.h @@ -143,6 +143,7 @@ public: void playSound(int id, int flag); void startSceneTrack(); void stopSoundStream2(); + void stopAllSoundStreams(); int _sfxVolume; diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp index 689260a41b..dab40ec55a 100644 --- a/engines/fullpipe/scenes/scene04.cpp +++ b/engines/fullpipe/scenes/scene04.cpp @@ -434,8 +434,21 @@ void sceneHandler04_liftBottle() { } } -void sceneHandler04_sub7() { - warning("sceneHandler04_sub7()"); +void sceneHandler04_startSounds(const char *snd1, const char *snd2, const char *snd3) { + warning("STUB: sceneHandler04_startSounds()"); +} + +void sceneHandler04_goClock() { + sceneHandler04_walkKozyawka(); + chainQueue(QU_SC4_GOCLOCK, 0); + g_vars->scene04_soundPlaying = 1; + g_vars->scene04_coinPut = 0; + + g_fullpipe->stopAllSoundStreams(); + + sceneHandler04_startSounds("sc4_start.ogg", "sc4_loop.ogg", "sc4_stop2.ogg"); + + g_vars->scene04_var14 = 0; } void sceneHandler04_sub8(ExCommand *ex) { @@ -701,7 +714,7 @@ int sceneHandler04(ExCommand *ex) { sceneHandler04_sub1(0); if (g_vars->scene04_coinPut && g_vars->scene04_var18 && !g_vars->scene04_var09 && !g_vars->scene04_soundPlaying) - sceneHandler04_sub7(); + sceneHandler04_goClock(); if (g_vars->scene04_var01) { if (!g_vars->scene04_soundPlaying) { diff --git a/engines/fullpipe/sound.cpp b/engines/fullpipe/sound.cpp index b4a864d164..147d6218c6 100644 --- a/engines/fullpipe/sound.cpp +++ b/engines/fullpipe/sound.cpp @@ -139,5 +139,9 @@ void FullpipeEngine::stopSoundStream2() { warning("STUB: FullpipeEngine::stopSoundStream2()"); } +void FullpipeEngine::stopAllSoundStreams() { + warning("STUB: FullpipeEngine::stopAllSoundStreams()"); +} + } // End of namespace Fullpipe -- cgit v1.2.3