diff options
Diffstat (limited to 'engines/tsage/ringworld/ringworld_scenes3.h')
-rw-r--r-- | engines/tsage/ringworld/ringworld_scenes3.h | 901 |
1 files changed, 901 insertions, 0 deletions
diff --git a/engines/tsage/ringworld/ringworld_scenes3.h b/engines/tsage/ringworld/ringworld_scenes3.h new file mode 100644 index 0000000000..2dbdc27211 --- /dev/null +++ b/engines/tsage/ringworld/ringworld_scenes3.h @@ -0,0 +1,901 @@ +/* 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 TSAGE_RINGWORLD_SCENES3_H +#define TSAGE_RINGWORLD_SCENES3_H + +#include "common/scummsys.h" +#include "tsage/core.h" +#include "tsage/converse.h" +#include "tsage/ringworld/ringworld_logic.h" + +namespace TsAGE { + +namespace Ringworld { + +using namespace TsAGE; + +class Scene2000 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public Action { + public: + virtual void signal(); + }; + class Action4 : public Action { + public: + virtual void signal(); + }; + class Action5 : public Action { + public: + virtual void signal(); + }; + class Action6 : public Action { + public: + virtual void signal(); + }; + class Action7 : public Action { + public: + virtual void signal(); + }; + class Action8 : public Action { + public: + virtual void signal(); + }; + class Action9 : public Action { + public: + virtual void signal(); + }; + class Action10 : public Action { + public: + virtual void signal(); + }; + class Action11 : public Action { + public: + virtual void signal(); + }; + class Action12 : public Action { + public: + virtual void signal(); + }; + class Action13 : public Action { + public: + virtual void signal(); + }; + class Action14 : public Action { + public: + virtual void signal(); + }; + +public: + SpeakerSL _speakerSL; + SpeakerQR _speakerQR; + SpeakerMR _speakerMR; + SpeakerQText _speakerQText; + SpeakerMText _speakerMText; + SpeakerSText _speakerSText; + SpeakerHText _speakerHText; + SpeakerGameText _speakerGameText; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + Action5 _action5; + Action6 _action6; + Action7 _action7; + Action8 _action8; + Action9 _action9; + Action10 _action10; + Action11 _action11; + Action12 _action12; + Action13 _action13; + Action14 _action14; + SceneObject _object1, _object2, _object3, _object4, _object5; + SceneObject _object6, _object7, _object8, _object9, _object10; + ASound _soundHandler1, _soundHandler2; + + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void stripCallback(int v); +}; + +class Scene2100 : public Scene { + /* Actions */ + class Action1 : public ActionExt { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public Action { + public: + virtual void signal(); + }; + class Action4 : public Action { + public: + virtual void signal(); + }; + class Action5 : public Action { + public: + virtual void signal(); + }; + class Action6 : public Action { + public: + virtual void signal(); + }; + class Action7 : public Action { + public: + virtual void signal(); + }; + class Action8 : public Action { + public: + virtual void signal(); + }; + class Action9 : public Action { + public: + virtual void signal(); + }; + class Action10 : public Action { + public: + virtual void signal(); + }; + class Action11 : public Action { + public: + virtual void signal(); + }; + class Action12 : public Action { + public: + virtual void signal(); + }; + class Action13 : public Action { + public: + virtual void signal(); + }; + class Action14 : public Action { + public: + virtual void signal(); + }; + class Action15 : public Action { + public: + virtual void signal(); + }; + class Action16 : public Action { + public: + virtual void signal(); + }; + class Action17 : public Action { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot2 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot3 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot4 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot8 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot10 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot14 : public SceneObject { + public: + virtual void doAction(int action); + }; + + /* Objects */ + class Object1 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Object2 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Object3 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + SequenceManager _sequenceManager; + ASound _soundHandler; + SpeakerMText _speakerMText; + SpeakerMR _speakerMR; + SpeakerQL _speakerQL; + SpeakerQR _speakerQR; + SpeakerQText _speakerQText; + SpeakerGameText _speakerGameText; + SpeakerSText _speakerSText; + SpeakerSL _speakerSL; + SpeakerSAL _speakerSAL; + SpeakerHText _speakerHText; + + DisplayHotspot _hotspot1; + Hotspot2 _hotspot2; + Hotspot3 _hotspot3; + Hotspot4 _hotspot4; + DisplayHotspot _hotspot5, _hotspot6, _hotspot7; + Hotspot8 _hotspot8; + DisplayHotspot _hotspot9; + Hotspot10 _hotspot10; + DisplayHotspot _hotspot11, _hotspot12, _hotspot13; + Hotspot14 _hotspot14; + DisplayHotspot _hotspot15; + + Object1 _object1; + Object2 _object2; + Object3 _object3; + SceneObject _object4; + + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + Action5 _action5; + Action6 _action6; + Action7 _action7; + Action8 _action8; + Action9 _action9; + Action10 _action10; + Action11 _action11; + Action12 _action12; + Action13 _action13; + Action14 _action14; + Action15 _action15; + Action16 _action16; + Action17 _action17; + int _sitFl; + SceneArea _area1, _area2, _area3, _area4; + + Scene2100(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void stripCallback(int v); + virtual void signal(); + virtual void synchronize(Serializer &s); +}; + +class Scene2120 : public Scene { + /* Actions */ + class Entry { + public: + int _size; + int _lineNum; + int _visage; + + Entry() { _size = 0; _lineNum = 0; _visage = 0; } + Entry(int size, int lineNum, int visage) { _size = size; _lineNum = lineNum; _visage = visage; } + }; + + class Action1 : public Action { + private: + Common::Array<Entry> _entries; + public: + Action1(); + + virtual void signal(); + virtual void dispatch(); + }; + +public: + ASound _soundHandler; + SceneObject _topicArrowHotspot, _arrowHotspot, _visageHotspot; + SceneObject _subjectButton, _nextPageButton, _previousPageButton, _exitButton; + Action1 _action1; + Rect _listRect; + int _dbMode, _prevDbMode; + bool _visageVisable; + int _subjectIndex; + int _lineOffset; + + Scene2120(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); +}; + +class Scene2150 : public Scene { + /* Actions */ + class Action1 : public ActionExt { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot1 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot2 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot4 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot7 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot10 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + ASound _soundHandler; + SequenceManager _sequenceManager; + SpeakerGameText _speakerGameText; + + Rect _rect1, _rect2; + Hotspot1 _hotspot1; + Hotspot2 _hotspot2; + DisplayHotspot _hotspot3; + Hotspot4 _hotspot4; + DisplayHotspot _hotspot5, _hotspot6; + Hotspot7 _hotspot7; + DisplayHotspot _hotspot8, _hotspot9; + Hotspot10 _hotspot10; + DisplayHotspot _hotspot11; + SceneObject _hotspot12, _hotspot13, _hotspot14; + SceneArea _area1, _area2, _area3, _area4; + Action1 _action1; + Action2 _action2; + + Scene2150(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); + virtual void signal(); + virtual void dispatch(); +}; + +class Scene2200 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public ActionExt { + public: + virtual void signal(); + virtual void process(Event &event); + }; + class Action4 : public Action { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot3 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot5 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot9 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + SequenceManager _sequenceManager; + SpeakerMText _speakerMText; + SpeakerSText _speakerSText; + SpeakerQText _speakerQText; + SpeakerSL _speakerSL; + SpeakerQR _speakerQR; + SpeakerQL _speakerQL; + SpeakerMR _speakerMR; + SpeakerGameText _speakerGameText; + Rect _exitRect; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + DisplayHotspot _hotspot1; + Hotspot3 _hotspot3; + Hotspot5 _hotspot5; + Hotspot9 _hotspot9; + DisplayHotspot _hotspot10; + SceneObject _hotspot2, _hotspot4; + SceneObject _hotspot6, _hotspot7, _hotspot8; + ASound _soundHandler1, _soundHandler2; + + Scene2200(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void stripCallback(int v); + virtual void synchronize(Serializer &s); + virtual void signal(); + virtual void dispatch(); +}; + +class Scene2222 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + +public: + ASound _soundHandler; + SpeakerSText _speakerSText; + SpeakerMText _speakerMText; + SpeakerQText _speakerQText; + SpeakerML _speakerML; + SpeakerSR _speakerSR; + Action1 _action1; + Action2 _action2; + SceneObject _hotspot1, _hotspot2, _hotspot3, _hotspot4, _hotspot5; + + virtual void postInit(SceneObjectList *OwnerList = NULL); +}; + +class Scene2230 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public Action { + public: + virtual void signal(); + }; + class Action4 : public Action { + public: + virtual void signal(); + }; + class Action5 : public Action { + public: + virtual void signal(); + }; + class Action6 : public Action { + public: + virtual void signal(); + }; + class Action7 : public Action { + public: + virtual void signal(); + }; + class Action8 : public Action { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot1 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot3 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot4 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot5 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot6 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot7 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot8 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot10 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot11 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot12 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + ASound _soundHandler; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + Action5 _action5; + Action6 _action6; + Action7 _action7; + Action8 _action8; + Hotspot1 _hotspot1; + Hotspot3 _hotspot3; + Hotspot4 _hotspot4; + SceneObject _hotspot2; + Hotspot5 _hotspot5; + Hotspot6 _hotspot6; + Hotspot7 _hotspot7; + Hotspot8 _hotspot8; + DisplayHotspot _hotspot9; + Hotspot10 _hotspot10; + Hotspot11 _hotspot11; + Hotspot12 _hotspot12; + Rect _rect1; + int _field30A; + + Scene2230(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); + virtual void dispatch(); +}; + +class Scene2280 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public Action { + public: + virtual void signal(); + }; + class Action4 : public ActionExt { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot1 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot2 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot4 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot7 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot8 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot10 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot12 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot14 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot15 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot16 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot17 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot18 : public SceneObject { + public: + virtual void doAction(int action); + }; + +public: + ASound _soundHandler; + SequenceManager _sequenceManager; + Rect _exitRect; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + Hotspot1 _hotspot1; + Hotspot2 _hotspot2; + DisplayHotspot _hotspot3; + Hotspot4 _hotspot4; + DisplayHotspot _hotspot5, _hotspot6; + Hotspot7 _hotspot7; + Hotspot8 _hotspot8; + DisplayHotspot _hotspot9; + Hotspot10 _hotspot10; + DisplayHotspot _hotspot11; + Hotspot12 _hotspot12; + DisplayHotspot _hotspot13; + Hotspot14 _hotspot14; + DisplayHotspot _hotspot15, _hotspot16; + Hotspot17 _hotspot17; + Hotspot18 _hotspot18; + + Scene2280(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); + virtual void signal(); + virtual void dispatch(); +}; + +class Scene2300 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public Action { + public: + virtual void signal(); + }; + class Action4 : public ActionExt { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot5 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot7 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + ASound _soundHandler1, _soundHandler2; + SpeakerSL _speakerSL; + SpeakerMText _speakerMText; + SpeakerQText _speakerQText; + SpeakerSText _speakerSText; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + SceneObject _hotspot1, _hotspot2, _hotspot3, _hotspot4; + Hotspot5 _hotspot5; + SceneObject _hotspot6; + Hotspot7 _hotspot7; + SceneObject _hotspot8, _hotspot9, _hotspot10; + DisplayHotspot _hotspot11, _hotspot12, _hotspot13, _hotspot14, _hotspot15; + + Scene2300(); + virtual void postInit(SceneObjectList *OwnerList = NULL); +}; + +class Scene2310 : public Scene { +private: + int findObject(int objIndex); + + /* Custom classes */ + class ProtectionEntry { + public: + int _pageNumber; + int _connectionList[5]; + + void set(int pageNumber, int v1, int v2, int v3, int v4, int v5) { + _pageNumber = pageNumber; + _connectionList[0] = v1; _connectionList[1] = v2; _connectionList[2] = v3; + _connectionList[3] = v4; _connectionList[4] = v5; + } + }; + +public: + SequenceManager _sequenceManager; + int _wireIndex, _pageIndex; + SceneObject _wireList[5]; + Rect _rectList[5]; + SceneText _sceneText; + ProtectionEntry _pageList[21]; + + Scene2310(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); + virtual void signal(); + virtual void process(Event &event); + virtual void dispatch(); +}; + +class Scene2320 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + }; + class Action2 : public Action { + public: + virtual void signal(); + }; + class Action3 : public ActionExt { + public: + virtual void signal(); + }; + class Action4 : public Action { + public: + virtual void signal(); + }; + class Action5 : public Action { + public: + virtual void signal(); + }; + class Action6 : public Action { + public: + virtual void signal(); + }; + class Action7 : public Action { + public: + virtual void signal(); + }; + class Action8 : public Action { + public: + virtual void signal(); + }; + + /* Hotspots */ + class Hotspot5 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot6 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot8 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot10 : public SceneObjectExt { + public: + virtual void doAction(int action); + }; + class Hotspot11 : public SceneObjectExt { + public: + virtual void doAction(int action); + }; + class Hotspot12 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot14 : public SceneObject { + public: + virtual void doAction(int action); + }; + class Hotspot15 : public SceneObject { + public: + virtual void doAction(int action); + }; +public: + ASound _soundHandler; + SequenceManager _sequenceManager1, _sequenceManager2; + SpeakerMText _speakerMText; + SpeakerMR _speakerMR; + SpeakerML _speakerML; + SpeakerQText _speakerQText; + SpeakerQL _speakerQL; + SpeakerQR _speakerQR; + SpeakerSAL _speakerSAL; + SpeakerSL _speakerSL; + SpeakerSR _speakerSR; + SpeakerSText _speakerSText; + SpeakerGameText _speakerGameText; + SceneArea _area1, _area2, _area3, _area4; + DisplayHotspot _hotspot1, _hotspot2, _hotspot3, _hotspot4; + Hotspot5 _hotspot5; + Hotspot6 _hotspot6; + SceneObject _hotspot7, _hotspot9; + Hotspot8 _hotspot8; + Hotspot10 _hotspot10; + Hotspot11 _hotspot11; + Hotspot12 _hotspot12; + DisplayHotspot _hotspot13; + Hotspot14 _hotspot14; + Hotspot15 _hotspot15; + SceneObject _hotspot16; + SceneItem *_hotspotPtr; + Action1 _action1; + Action2 _action2; + Action3 _action3; + Action4 _action4; + Action5 _action5; + Action6 _action6; + Action7 _action7; + Action8 _action8; + + Scene2320(); + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void synchronize(Serializer &s); + virtual void signal(); +}; + +class Scene2400 : public Scene { + /* Actions */ + class Action1 : public Action { + public: + virtual void signal(); + virtual void dispatch(); + }; +public: + Action1 _action1; + SceneObject _object; + + virtual void postInit(SceneObjectList *OwnerList = NULL); +}; + +} // End of namespace Ringworld + +} // End of namespace TsAGE + +#endif |