2013-08-06 21:43:08 +00:00
|
|
|
/* ScummVM - Graphic Adventure Engine
|
|
|
|
*
|
|
|
|
* ScummVM is the legal property of its developers, whose names
|
|
|
|
* are too numerous to list here. Please refer to the COPYRIGHT
|
|
|
|
* file distributed with this source distribution.
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
* of the License, or (at your option) any later version.
|
|
|
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef FULLPIPE_SCENES_H
|
|
|
|
#define FULLPIPE_SCENES_H
|
|
|
|
|
|
|
|
namespace Fullpipe {
|
|
|
|
|
2013-12-16 20:05:21 +00:00
|
|
|
struct BehaviorEntryInfo;
|
2013-08-06 21:43:08 +00:00
|
|
|
class StaticANIObject;
|
2013-12-16 20:05:21 +00:00
|
|
|
class MctlLadder;
|
2013-08-06 21:43:08 +00:00
|
|
|
|
2013-11-20 20:18:02 +00:00
|
|
|
int defaultUpdateCursor();
|
|
|
|
|
|
|
|
int sceneIntro_updateCursor();
|
|
|
|
void sceneIntro_initScene(Scene *sc);
|
|
|
|
int sceneHandlerIntro(ExCommand *cmd);
|
|
|
|
|
|
|
|
void scene01_fixEntrance();
|
|
|
|
void scene01_initScene(Scene *sc, int entrance);
|
|
|
|
int sceneHandler01(ExCommand *cmd);
|
|
|
|
|
|
|
|
void scene02_initScene(Scene *sc);
|
|
|
|
int sceneHandler02(ExCommand *ex);
|
|
|
|
|
|
|
|
void scene03_setEaterState();
|
|
|
|
int scene03_updateCursor();
|
|
|
|
void scene03_initScene(Scene *sc);
|
|
|
|
int sceneHandler03(ExCommand *cmd);
|
|
|
|
|
2013-11-21 16:49:12 +00:00
|
|
|
int scene04_updateCursor();
|
|
|
|
void scene04_initScene(Scene *sc);
|
|
|
|
int sceneHandler04(ExCommand *cmd);
|
|
|
|
|
2013-12-14 15:38:14 +00:00
|
|
|
void scene05_initScene(Scene *sc);
|
|
|
|
int sceneHandler05(ExCommand *cmd);
|
2013-12-16 20:18:49 +00:00
|
|
|
|
|
|
|
void scene06_initScene(Scene *sc);
|
|
|
|
void scene06_initMumsy();
|
|
|
|
int sceneHandler06(ExCommand *cmd);
|
|
|
|
int scene06_updateCursor();
|
2013-12-14 15:38:14 +00:00
|
|
|
|
2013-12-19 16:45:11 +00:00
|
|
|
void scene07_initScene(Scene *sc);
|
|
|
|
int sceneHandler07(ExCommand *cmd);
|
|
|
|
|
2013-12-20 09:35:42 +00:00
|
|
|
void scene08_initScene(Scene *sc);
|
|
|
|
void scene08_setupMusic();
|
|
|
|
int sceneHandler08(ExCommand *cmd);
|
|
|
|
int scene08_updateCursor();
|
|
|
|
|
2013-11-20 20:18:02 +00:00
|
|
|
void sceneDbgMenu_initScene(Scene *sc);
|
|
|
|
int sceneHandlerDbgMenu(ExCommand *cmd);
|
|
|
|
|
2013-08-06 21:43:08 +00:00
|
|
|
class Vars {
|
2013-11-03 22:28:13 +00:00
|
|
|
public:
|
2013-08-06 21:43:08 +00:00
|
|
|
Vars();
|
|
|
|
|
2013-09-18 15:37:07 +00:00
|
|
|
GameVar *swallowedEgg1;
|
|
|
|
GameVar *swallowedEgg2;
|
|
|
|
GameVar *swallowedEgg3;
|
2013-08-19 21:34:15 +00:00
|
|
|
|
2013-08-06 21:43:08 +00:00
|
|
|
StaticANIObject *sceneIntro_aniin1man;
|
|
|
|
bool sceneIntro_needSleep;
|
|
|
|
bool sceneIntro_needGetup;
|
|
|
|
bool sceneIntro_skipIntro;
|
|
|
|
bool sceneIntro_playing;
|
|
|
|
bool sceneIntro_needBlackout;
|
2013-08-07 17:52:23 +00:00
|
|
|
|
|
|
|
PictureObject *scene01_picSc01Osk;
|
|
|
|
PictureObject *scene01_picSc01Osk2;
|
2013-09-09 20:23:33 +00:00
|
|
|
|
2013-11-18 16:25:48 +00:00
|
|
|
StaticANIObject *scene02_guvTheDrawer;
|
2013-11-19 21:07:20 +00:00
|
|
|
int scene02_boxDelay;
|
2013-11-18 16:25:48 +00:00
|
|
|
bool scene02_boxOpen;
|
|
|
|
|
2013-11-03 22:28:13 +00:00
|
|
|
StaticANIObject *scene03_eggeater;
|
|
|
|
StaticANIObject *scene03_domino;
|
|
|
|
|
2013-11-21 15:44:52 +00:00
|
|
|
PictureObject *scene04_bottle;
|
|
|
|
StaticANIObject *scene04_hand;
|
|
|
|
StaticANIObject *scene04_plank;
|
|
|
|
StaticANIObject *scene04_clock;
|
|
|
|
StaticANIObject *scene04_spring;
|
|
|
|
StaticANIObject *scene04_mamasha;
|
|
|
|
StaticANIObject *scene04_boot;
|
|
|
|
StaticANIObject *scene04_speaker;
|
|
|
|
|
|
|
|
Common::Point scene04_jumpingKozyawki[20];
|
|
|
|
Common::Point scene04_jumpRotateKozyawki[20];
|
|
|
|
|
2013-11-28 04:38:22 +00:00
|
|
|
Common::List<StaticANIObject *> scene04_kozyawkiObjList;
|
2013-11-29 08:29:34 +00:00
|
|
|
Common::List<GameObject *> scene04_bottleObjList;
|
|
|
|
Common::List<StaticANIObject *> scene04_kozyawkiAni;
|
2013-11-21 15:44:52 +00:00
|
|
|
|
2013-12-05 20:41:02 +00:00
|
|
|
MctlLadder *scene04_ladder;
|
2013-12-08 13:38:27 +00:00
|
|
|
int scene04_ladderOffset;
|
|
|
|
|
2013-11-21 15:44:52 +00:00
|
|
|
bool scene04_coinPut;
|
|
|
|
bool scene04_soundPlaying;
|
2013-12-12 14:13:10 +00:00
|
|
|
bool scene04_dudeOnLadder;
|
2013-12-08 13:46:12 +00:00
|
|
|
|
2013-11-21 15:44:52 +00:00
|
|
|
int scene04_dynamicPhaseIndex;
|
2013-11-22 05:04:24 +00:00
|
|
|
int scene04_sceneClickX;
|
|
|
|
int scene04_sceneClickY;
|
|
|
|
int scene04_dudePosX;
|
|
|
|
int scene04_dudePosY;
|
2013-12-08 13:38:27 +00:00
|
|
|
int scene04_bottleY;
|
|
|
|
|
|
|
|
StaticANIObject *scene04_walkingKozyawka;
|
|
|
|
|
|
|
|
int scene04_speakerVariant;
|
|
|
|
int scene04_speakerPhase;
|
2013-11-21 15:44:52 +00:00
|
|
|
|
2013-12-14 13:48:35 +00:00
|
|
|
bool scene04_bottleIsTaken;
|
|
|
|
bool scene04_kozyawkaOnLadder;
|
2013-12-11 12:22:21 +00:00
|
|
|
int scene04_bottleWeight;
|
2013-12-14 13:48:35 +00:00
|
|
|
bool scene04_var07;
|
|
|
|
bool scene04_ladderClickable;
|
|
|
|
bool scene04_handIsDown;
|
|
|
|
bool scene04_dudeInBottle;
|
|
|
|
bool scene04_kozHeadRaised;
|
|
|
|
bool scene04_bottleIsDropped;
|
|
|
|
bool scene04_bigBallIn;
|
|
|
|
int scene04_bigBallCounter;
|
2013-12-14 14:12:40 +00:00
|
|
|
bool scene04_bigBallFromLeft;
|
|
|
|
bool scene04_clockCanGo;
|
|
|
|
bool scene04_objectIsTaken;
|
|
|
|
int scene04_springOffset;
|
|
|
|
StaticANIObject *scene04_lastKozyawka;
|
|
|
|
int scene04_springDelay;
|
2013-11-21 15:44:52 +00:00
|
|
|
|
2013-12-14 15:38:14 +00:00
|
|
|
StaticANIObject *scene05_handle;
|
|
|
|
StaticANIObject *scene05_wacko;
|
|
|
|
StaticANIObject *scene05_bigHatch;
|
2013-12-15 14:45:28 +00:00
|
|
|
int scene05_wackoTicker;
|
|
|
|
int scene05_handleFlipper;
|
|
|
|
int scene05_floatersTicker;
|
2013-12-14 15:38:14 +00:00
|
|
|
|
2013-12-16 09:08:54 +00:00
|
|
|
StaticANIObject *scene06_mumsy;
|
2013-12-18 22:14:18 +00:00
|
|
|
int scene06_manX;
|
|
|
|
int scene06_manY;
|
|
|
|
int scene06_ballX;
|
|
|
|
int scene06_ballY;
|
2013-12-18 21:53:43 +00:00
|
|
|
StaticANIObject *scene06_someBall;
|
2013-12-16 09:08:54 +00:00
|
|
|
StaticANIObject *scene06_invHandle;
|
|
|
|
StaticANIObject *scene06_liftButton;
|
|
|
|
StaticANIObject *scene06_ballDrop;
|
2013-12-18 21:53:43 +00:00
|
|
|
bool scene06_arcadeEnabled;
|
|
|
|
bool scene06_aimingBall;
|
2013-12-17 20:47:56 +00:00
|
|
|
StaticANIObject *scene06_currentBall;
|
2013-12-18 22:14:18 +00:00
|
|
|
StaticANIObject *scene06_ballInHands;
|
|
|
|
StaticANIObject *scene06_flyingBall;
|
2013-12-16 09:08:54 +00:00
|
|
|
Common::Array<StaticANIObject *> scene06_balls;
|
2013-12-17 10:15:51 +00:00
|
|
|
int scene06_numBallsGiven;
|
2013-12-18 22:14:18 +00:00
|
|
|
int scene06_mumsyNumBalls;
|
|
|
|
int scene06_eggieTimeout;
|
|
|
|
int scene06_eggieDirection;
|
|
|
|
int scene06_mumsyGotBall;
|
|
|
|
int scene06_ballDeltaX;
|
|
|
|
int scene06_ballDeltaY;
|
2013-12-16 20:05:21 +00:00
|
|
|
int scene06_sceneClickX;
|
|
|
|
int scene06_sceneClickY;
|
|
|
|
int scene06_mumsyPos;
|
|
|
|
BehaviorEntryInfo *scene06_mumsyJumpBk;
|
|
|
|
BehaviorEntryInfo *scene06_mumsyJumpFw;
|
|
|
|
int scene06_mumsyJumpBkPercent;
|
|
|
|
int scene06_mumsyJumpFwPercent;
|
2013-12-16 09:08:54 +00:00
|
|
|
|
2013-12-19 15:49:27 +00:00
|
|
|
BehaviorEntryInfo *scene07_lukeAnim;
|
|
|
|
int scene07_lukePercent;
|
|
|
|
StaticANIObject *scene07_plusMinus;
|
|
|
|
|
2013-12-19 21:00:23 +00:00
|
|
|
StaticANIObject *scene08_batuta;
|
|
|
|
StaticANIObject *scene08_vmyats;
|
|
|
|
StaticANIObject *scene08_clock;
|
|
|
|
int scene08_var01;
|
|
|
|
int scene08_var02;
|
|
|
|
int scene08_var03;
|
|
|
|
int scene08_var04;
|
|
|
|
int scene08_var05;
|
|
|
|
int scene08_var06;
|
|
|
|
int scene08_var07;
|
2013-12-20 09:29:23 +00:00
|
|
|
int scene08_var08;
|
2013-12-19 21:00:23 +00:00
|
|
|
|
2013-10-29 22:54:58 +00:00
|
|
|
PictureObject *selector;
|
2013-08-06 21:43:08 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
} // End of namespace Fullpipe
|
|
|
|
|
|
|
|
#endif /* FULLPIPE_SCENES_H */
|