mElite
1.0
An Elite clone based on TextElite by Jan-Philipp Kappmeier and Melanie Schmidt.
Main Page
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
mElite
Structures.h
Go to the documentation of this file.
1
6
#pragma once
7
8
#include "
GlobalGL.h
"
9
#include <string>
10
#include "
wrappDef.h
"
11
#include "
Vector3.h
"
12
13
struct
PlayerStatus
{
14
PlayerStatus
() :
fuel
(0),
cash
(0) {}
15
double
fuel
;
16
double
cash
;
17
};
18
19
struct
Position
{
// position on screen, no negaive coordinates
20
Position
() :
x
(0),
y
(0) {}
21
unsigned
int
x
;
22
unsigned
int
y
;
23
};
24
25
enum
CullingLocation
{
26
outside
,
27
intersect
,
28
inside
29
};
30
31
enum
CullingPlanet
{
32
never
,
// the planet is drawn always
33
always
,
// the real position of the planet is calculated every time it is drawn
34
manually
,
// the real position of the planet has to be calculated manually
35
valid
// with this value, the culling position is always correct
36
};
37
38
struct
SystemInfo
{
39
SystemInfo
() :
name
(
""
),
government
(
Anarchy
) {}
40
std::string
name
;
41
Position
pos
;
42
float
size
;
// defines maximal radius
43
govTypes
government
;
44
std::string
description
;
// currentSystem.description
45
unsigned
int
population
;
// currentSystem.population
46
unsigned
int
productivity
;
// currentSystem.productivity
47
unsigned
int
radius
;
// currentSystem.radius
48
unsigned
int
techLevel
;
// currentSystem.techLevel
49
econTypes
economy
;
// currentSystem.economy
50
unsigned
int
systemNumber
;
// internal number of system
51
};
52
53
enum
SystemLists
{
54
reachable
,
55
maximalReachable
,
56
allSystems
,
57
nearSystems
58
};
59
60
struct
FrustumInformation
{
61
FrustumInformation
() :
farDist
( 100 ),
62
nearDist
( 0.1),
63
farWidth
( 0.0 ),
64
farHeight
( 0.0 ),
65
nearWidth
( 0.0 ),
66
nearHeight
( 0.0 ),
67
fov
( 45.0f ),
68
aspect
( 800.0 / 600.0 ) {}
69
float
farDist
;
70
float
nearDist
;
71
float
farWidth
;
72
float
farHeight
;
73
float
nearWidth
;
74
float
nearHeight
;
75
float
fov
;
76
float
aspect
;
77
};
78
79
enum
Screens
{
80
systemInfo
,
81
localSystems
,
82
currentSystem
,
83
credits
,
84
help
,
85
loadProgram
,
86
loadLevel
,
87
marketplace
,
88
helpEnvironment
,
89
helpLocal
,
90
helpInfo
,
91
helpMarketplace
92
};
93
94
struct
consoleCommand
{
95
char
*
command
;
96
int
arrayAdress
;
97
};
98
102
enum
TextureQuality
{
103
extraLow
,
104
low
,
105
medium
,
106
high
,
107
extraHigh
108
};
109
113
enum
TextureName
{
114
sun_corona
= 0,
115
bar_green_red
,
116
radar_tex
,
117
decal_sight
,
118
font_1
,
119
font_2
,
120
font_3
,
121
laser1
,
122
missile_hud
,
123
material_dirt
,
124
material_metal
,
125
planet_01
,
126
planet_02
,
127
planet_03
,
128
planet_04
,
129
planet_05
,
130
planet_06
,
131
planet_07
,
132
planet_08
,
133
planet_09
,
134
planet_red
,
135
planet_ss_earth
,
136
planet_ss_moon
,
137
planet_ss_jupiter
,
138
planet_ss_mars
,
139
planet_ss_mercury
,
140
planet_ss_neptune
,
141
planet_ss_pluto
,
142
planet_ss_saturn
,
143
planet_ss_uranus
,
144
planet_ss_venus
,
145
star_001
,
146
star_002
,
147
star_003
,
148
star_004
,
149
star_005
,
150
star_006
,
151
star_010
,
152
star_011
,
153
star_012
,
154
star_013
,
155
star_014
,
156
star_sun
,
157
universe_1
,
158
universe_2
,
159
universe_3
,
160
universe_4
161
};
162
166
enum
TextureSlot
{
167
planet1
= 0,
168
planet2
,
169
planet3
,
170
planet4
,
171
planet5
,
172
planet6
,
173
planet7
,
174
planet8
,
175
planet9
,
176
planet10
,
177
star
,
178
background
,
179
corona
,
180
sight
,
181
laser
,
182
font1
,
183
font2
,
184
dirt
,
185
metal
,
186
bar
,
187
radar
,
188
missile_hud_tex
,
189
rearview
190
};
191
192
enum
ObjectName
{
193
adder
= 0,
194
anaconda
,
195
ball
,
196
coriolis
,
197
missile
,
198
thargoid
,
199
tieDroid
200
};
201
202
struct
ObjectInfo
{
203
ObjectInfo
() :
filename
(
""
),
object
(-1),
displayList
(0),
view
(0,0,1) {}
204
int
object
;
205
std::string
filename
;
206
GLuint
displayList
;
207
Vector3
view
;
208
};
209
210
struct
PlanetInfoGraphical
{
211
float
radius
;
212
float
distance
;
213
TextureName
texture
;
214
// bool has ring; // not supported
215
float
spinningSpeed
;
216
float
rotateAngle
;
217
float
rotateSpeed
;
218
};
Generated on Tue Oct 2 2012 14:38:38 for mElite by
1.8.2