scummvm/engines/fullpipe/scenes.h

367 lines
9.5 KiB
C
Raw Normal View History

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;
class MGM;
2013-08-06 21:43:08 +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();
void scene10_initScene(Scene *sc);
int sceneHandler10(ExCommand *cmd);
int scene10_updateCursor();
2013-12-27 19:43:20 +00:00
void scene11_initScene(Scene *sc);
void scene11_setupMusic();
int sceneHandler11(ExCommand *cmd);
int scene11_updateCursor();
2013-12-24 16:52:36 +00:00
void scene12_initScene(Scene *sc);
int sceneHandler12(ExCommand *ex);
2013-12-29 21:18:51 +00:00
void scene13_initScene(Scene *sc);
int sceneHandler13(ExCommand *ex);
2013-12-30 22:17:35 +00:00
void scene14_initScene(Scene *sc);
void scene14_setupMusic();
int sceneHandler14(ExCommand *cmd);
int scene14_updateCursor();
2013-12-24 20:49:09 +00:00
int scene15_updateCursor();
void scene15_initScene(Scene *sc);
int sceneHandler15(ExCommand *cmd);
2014-01-01 12:10:18 +00:00
void scene16_initScene(Scene *sc);
int sceneHandler16(ExCommand *cmd);
int scene16_updateCursor();
void scene17_initScene(Scene *sc);
void scene17_restoreState();
int sceneHandler17(ExCommand *cmd);
int scene17_updateCursor();
int scene21_updateCursor();
void scene21_initScene(Scene *sc);
int sceneHandler21(ExCommand *cmd);
2013-12-28 20:28:54 +00:00
void scene24_initScene(Scene *sc);
void scene24_setPoolState();
int sceneHandler24(ExCommand *cmd);
void scene31_initScene(Scene *sc);
int sceneHandler31(ExCommand *ex);
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-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
StaticANIObject *scene02_guvTheDrawer;
2013-11-19 21:07:20 +00:00
int scene02_boxDelay;
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];
Common::List<StaticANIObject *> scene04_kozyawkiObjList;
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;
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;
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
StaticANIObject *scene06_mumsy;
int scene06_manX;
int scene06_manY;
int scene06_ballX;
int scene06_ballY;
2013-12-18 21:53:43 +00:00
StaticANIObject *scene06_someBall;
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;
StaticANIObject *scene06_ballInHands;
StaticANIObject *scene06_flyingBall;
Common::Array<StaticANIObject *> scene06_balls;
int scene06_numBallsGiven;
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;
BehaviorEntryInfo *scene07_lukeAnim;
int scene07_lukePercent;
StaticANIObject *scene07_plusMinus;
StaticANIObject *scene08_batuta;
StaticANIObject *scene08_vmyats;
StaticANIObject *scene08_clock;
bool scene08_inAir;
2013-12-22 22:38:59 +00:00
bool scene08_flyingUp;
int scene08_onBelly;
int scene08_stairsOffset;
int scene08_snoringCountdown;
bool scene08_inArcade;
bool scene08_stairsVisible;
int scene08_manOffsetY;
2013-12-21 15:18:06 +00:00
StaticANIObject *scene10_gum;
StaticANIObject *scene10_packet;
StaticANIObject *scene10_packet2;
StaticANIObject *scene10_inflater;
PictureObject *scene10_ladder;
int scene10_hasGum;
StaticANIObject *scene11_swingie;
StaticANIObject *scene11_boots;
StaticANIObject *scene11_dudeOnSwing;
PictureObject *scene11_hint;
2013-12-28 11:56:02 +00:00
MGM scene11_mgm;
bool scene11_arcadeIsOn;
bool scene11_scrollIsEnabled;
bool scene11_scrollIsMaximized;
2013-12-28 11:56:02 +00:00
int scene11_hintCounter;
int scene11_swingieScreenEdge;
2013-12-28 11:56:02 +00:00
int scene11_crySound;
double scene11_swingAngle;
double scene11_swingOldAngle;
double scene11_swingSpeed;
double scene11_swingAngleDiff;
double scene11_swingInertia;
int scene11_swingCounter;
int scene11_swingCounterPrevTurn;
int scene11_swingDirection;
int scene11_swingDirectionPrevTurn;
bool scene11_swingIsSwinging;
bool scene11_swingieStands;
int scene11_dudeX;
int scene11_dudeY;
int scene11_swingMaxAngle;
2013-12-24 16:30:19 +00:00
int scene12_fly;
int scene12_flyCountdown;
2013-12-29 07:42:54 +00:00
StaticANIObject *scene13_whirlgig;
StaticANIObject *scene13_guard;
StaticANIObject *scene13_handleR;
StaticANIObject *scene13_handleL;
StaticANIObject *scene13_bridge;
bool scene13_guardDirection;
int scene13_dudeX;
2013-12-29 07:42:54 +00:00
2013-12-30 21:25:53 +00:00
StaticANIObject *scene14_grandma;
2013-12-31 23:51:45 +00:00
int scene14_sceneDeltaX;
int scene14_sceneDeltaY;
bool scene14_arcadeIsOn;
bool scene14_dudeIsKicking;
bool scene14_ballIsFlying;
bool scene14_dudeCanKick;
int scene14_sceneDiffX;
int scene14_sceneDiffY;
2013-12-30 21:25:53 +00:00
StaticANIObject *scene14_pink;
2013-12-31 23:51:45 +00:00
StaticANIObject *scene14_flyingBall;
Common::List<StaticANIObject *> scene14_balls;
2014-01-01 00:01:56 +00:00
bool scene14_grandmaIsHere;
int scene14_dudeX;
int scene14_dudeY;
int scene14_grandmaX;
int scene14_grandmaY;
int scene14_dude2X;
int scene14_ballDeltaX;
int scene14_ballDeltaY;
int scene14_ballX;
int scene14_ballY;
int scene14_hitsLeft;
Common::Point scene14_mouseCursorPos;
2013-12-30 21:25:53 +00:00
int scene15_chantingCountdown;
2013-12-24 20:12:05 +00:00
StaticANIObject *scene15_plusminus;
PictureObject *scene15_ladder;
StaticANIObject *scene15_boot;
2014-01-01 14:32:47 +00:00
Common::List<StaticANIObject *> scene16_figures;
StaticANIObject *scene16_walkingBoy;
StaticANIObject *scene16_walkingGirl;
int scene16_walkingCount;
2014-01-01 11:06:49 +00:00
StaticANIObject *scene16_wire;
StaticANIObject *scene16_mug;
StaticANIObject *scene16_jettie;
StaticANIObject *scene16_boot;
bool scene16_girlIsLaughing;
2014-01-01 11:06:49 +00:00
int scene16_sound;
bool scene16_placeIsOccupied;
2014-01-01 11:06:49 +00:00
2014-01-01 22:30:38 +00:00
int scene17_flyState;
bool scene17_sugarIsShown;
2014-01-01 22:34:21 +00:00
int scene17_sceneOldEdgeX;
2014-01-01 22:30:38 +00:00
int scene17_flyCountdown;
2014-01-01 21:07:58 +00:00
StaticANIObject *scene17_hand;
2014-01-01 22:30:38 +00:00
bool scene17_handPhase;
int scene17_sceneEdgeX;
2014-01-01 21:07:58 +00:00
2014-01-02 08:23:31 +00:00
StaticANIObject *scene21_giraffeBottom;
int scene21_giraffeBottomX;
int scene21_giraffeBottomY;
2014-01-02 08:40:36 +00:00
int scene21_pipeIsOpen;
double scene21_wigglePos;
bool scene21_wiggleTrigger;
2014-01-02 08:23:31 +00:00
2013-12-28 20:28:54 +00:00
bool scene24_jetIsOn;
bool scene24_flowIsLow;
bool scene24_waterIsOn;
2013-12-28 20:04:12 +00:00
StaticANIObject *scene24_water;
StaticANIObject *scene24_jet;
StaticANIObject *scene24_drop;
2014-01-02 11:24:30 +00:00
int scene31_chantingCountdown;
2014-01-02 11:07:11 +00:00
StaticANIObject *scene31_cactus;
StaticANIObject *scene31_plusMinus;
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 */