mElite  1.0
An Elite clone based on TextElite by Jan-Philipp Kappmeier and Melanie Schmidt.
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
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 
29 };
30 
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 {
40  std::string name;
42  float size; // defines maximal radius
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 
58 };
59 
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 {
92 };
93 
95  char *command;
97 };
98 
108 };
109 
161 };
162 
167  planet1 = 0,
190 };
191 
193  adder = 0,
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;
208 };
209 
211  float radius;
212  float distance;
214  // bool has ring; // not supported
216  float rotateAngle;
217  float rotateSpeed;
218 };