aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/ringworld_scenes10.h
blob: 6461b665d8ad78efb0a6214d17d0894419f1397c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
/* 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.
 *
 * $URL: https://scummvm-misc.svn.sourceforge.net/svnroot/scummvm-misc/trunk/engines/tsage/scene_logic.h $
 * $Id: scene_logic.h 232 2011-02-12 11:56:38Z dreammaster $
 *
 */

#ifndef TSAGE_RINGWORLD_SCENES10_H
#define TSAGE_RINGWORLD_SCENES10_H

#include "common/scummsys.h"
#include "tsage/ringworld_logic.h"
#include "tsage/events.h"
#include "tsage/core.h"
#include "tsage/scenes.h"
#include "tsage/globals.h"

namespace tSage {

class Scene9100: public Scene {
	/* Items */
	class SceneHotspot1: public SceneHotspot_3 {
	public:
		virtual void doAction(int action);
	};

	SequenceManager _sequenceManager;
	SceneObject _object1;
	SceneObject _object2;
	SceneObject _object3;
	SceneObject _object4;
	SceneObject _object5;
	SceneObject _object6;
	SceneHotspot1  _sceneHotspot1;
	SceneHotspot_3 _sceneHotspot2;
	SceneHotspot_3 _sceneHotspot3;
	SceneHotspot_3 _sceneHotspot4;
	SceneHotspot_3 _sceneHotspot5;
	SceneHotspot_3 _sceneHotspot6;

	virtual void postInit(SceneObjectList *OwnerList = NULL);
	virtual void signal();
	virtual void dispatch();
};

class Scene9350: public Scene {
	/* Objects */
	class Object1: public SceneObject {
	public:
		virtual void postInit();
		virtual void draw();
	};

public:
	int _field30A;
	SequenceManager _sequenceManager;
	Object1 _object1;
	SceneObject _object2;
	SceneHotspot_3 _sceneHotspot1;
	SceneHotspot_3 _sceneHotspot2;
	SceneHotspot_3 _sceneHotspot3;
	SceneHotspot_3 _sceneHotspot4;
	SceneHotspot_3 _sceneHotspot5;

	virtual void postInit(SceneObjectList *OwnerList = NULL);
	virtual void signal();
	virtual void dispatch();
};

class Scene9700: public Scene {
	int _field30A;
	SequenceManager _sequenceManager;
	SceneObject _object1;
	SceneHotspot_3 _sceneHotspot1;
	SceneHotspot_3 _sceneHotspot2;
	SceneHotspot_3 _sceneHotspot3;
	SceneHotspot_3 _sceneHotspot4;
	SceneHotspot_3 _sceneHotspot5;
	SceneHotspot_3 _sceneHotspot6;
	GfxButton _gfxButton1;

	virtual void postInit(SceneObjectList *OwnerList = NULL);
	virtual void signal();
	virtual void process(Event &event);
};

class Scene9750: public Scene {
public:
	SequenceManager _sequenceManager;
	SceneObject _object1;
	SceneObject _object2;

	virtual void postInit(SceneObjectList *OwnerList = NULL);
	virtual void signal();
	virtual void dispatch();
};

class Scene9999: public Scene {
	/* Actions */
	class Action1: public Action {
	public:
		virtual void signal();
	};
	class Action2: public Action {
	public:
		virtual void signal();
	};

public:

	Action1 _action1;
	Action2 _action2;
	Action _action3;
	SceneObject _object1;
	SceneObject _object2;
	SceneObject _object3;

	virtual void postInit(SceneObjectList *OwnerList = NULL);
};


} // End of namespace tSage

#endif