naev 0.10.4
space.h
1/*
2 * See Licensing and Copyright notice in naev.h
3 */
4#pragma once
5
6#include "space_fdecl.h"
7
8#include "commodity.h"
9#include "explosion.h"
10#include "faction.h"
11#include "mission_markers.h"
12#include "opengl.h"
13#include "pilot.h"
14#include "shipstats.h"
15#include "tech.h"
16#include "asteroid.h"
17
18#define SYSTEM_SIMULATE_TIME_PRE 25.
19#define SYSTEM_SIMULATE_TIME_POST 5.
20#define MAX_HYPERSPACE_VEL 25.
22/*
23 * Spob services.
24 */
25#define SPOB_SERVICE_LAND (1<<0)
26#define SPOB_SERVICE_REFUEL (1<<1)
27#define SPOB_SERVICE_MISSIONS (1<<2)
28#define SPOB_SERVICE_COMMODITY (1<<3)
29#define SPOB_SERVICE_OUTFITS (1<<4)
30#define SPOB_SERVICE_SHIPYARD (1<<5)
31#define SPOB_SERVICE_BAR (1<<6)
32#define SPOB_SERVICE_INHABITED (1<<7)
33#define SPOB_SERVICE_BLACKMARKET (1<<8)
34#define SPOB_SERVICES_MAX (SPOB_SERVICE_BLACKMARKET<<1)
35#define spob_hasService(p,s) ((p)->services & s)
37/*
38 * Spob flags.
39 */
40#define SPOB_KNOWN (1<<0)
41#define SPOB_BLACKMARKET (1<<1)
42#define SPOB_NOMISNSPAWN (1<<2)
43#define SPOB_UNINHABITED (1<<3)
44#define SPOB_MARKED (1<<4)
45#define SPOB_RADIUS (1<<10)
46#define spob_isFlag(p,f) ((p)->flags & (f))
47#define spob_setFlag(p,f) ((p)->flags |= (f))
48#define spob_rmFlag(p,f) ((p)->flags &= ~(f))
49#define spob_isKnown(p) spob_isFlag(p,SPOB_KNOWN)
56typedef struct MapOverlayPos_ {
57 float radius;
58 float text_offx;
59 float text_offy;
60 float text_width;
62
65typedef struct SpobPresence_ {
66 int faction;
67 double base;
68 double bonus;
69 int range;
71
77typedef struct VirtualSpob_ {
78 char *name;
81
88typedef struct Spob_ {
89 int id;
90 char *name;
91 char *display;
92 char *feature;
94 double radius;
95 const SimpleShader *marker;
97 /* Spob details. */
98 char *class;
99 uint64_t population;
101 /* Spob details. */
103 double hide;
105 /* Landing details. */
108 char *land_msg;
110 /* Landed details. */
113 unsigned int services;
116 tech_group_t *tech;
118 /* Graphics. */
125 /* Misc. */
126 char **tags;
127 unsigned int flags;
129 double map_alpha;
132 /* Lua stuff. */
133 char *lua_file;
134 nlua_env lua_env;
144} Spob;
145
146/*
147 * Star system flags
148 */
149#define SYSTEM_KNOWN (1<<0)
150#define SYSTEM_MARKED (1<<1)
151#define SYSTEM_CMARKED (1<<2)
152#define SYSTEM_CLAIMED (1<<3)
153#define SYSTEM_DISCOVERED (1<<4)
154#define SYSTEM_HIDDEN (1<<5)
155#define SYSTEM_HAS_KNOWN_LANDABLE (1<<6)
156#define SYSTEM_HAS_LANDABLE (1<<7)
157#define SYSTEM_NOLANES (1<<8)
158#define SYSTEM_PMARKED (1<<9)
159#define SYSTEM_INTEREST (1<<10)
160#define sys_isFlag(s,f) ((s)->flags & (f))
161#define sys_setFlag(s,f) ((s)->flags |= (f))
162#define sys_rmFlag(s,f) ((s)->flags &= ~(f))
163#define sys_isKnown(s) (sys_isFlag((s),SYSTEM_KNOWN))
164#define sys_isMarked(s) sys_isFlag((s),SYSTEM_MARKED)
169typedef struct SystemPresence_ {
171 double base;
172 double bonus;
173 double value;
174 double curUsed;
175 double timer;
178
179/*
180 * Jump point flags.
181 */
182#define JP_AUTOPOS (1<<0)
183#define JP_KNOWN (1<<1)
184#define JP_HIDDEN (1<<2)
185#define JP_EXITONLY (1<<3)
186#define jp_isFlag(j,f) ((j)->flags & (f))
187#define jp_setFlag(j,f) ((j)->flags |= (f))
188#define jp_rmFlag(j,f) ((j)->flags &= ~(f))
189#define jp_isKnown(j) jp_isFlag(j,JP_KNOWN)
190#define jp_isUsable(j) (jp_isKnown(j) && !jp_isFlag(j,JP_EXITONLY))
191
195typedef struct JumpPoint_ JumpPoint;
197 StarSystem *from;
199 StarSystem *target;
200 JumpPoint *returnJump;
202 double radius;
203 unsigned int flags;
204 double hide;
205 double angle;
206 double map_alpha;
207 /* Cached stuff. */
208 double cosa;
209 double sina;
210 int sx;
211 int sy;
213};
214extern glTexture *jumppoint_gfx;
219typedef struct MapShader_ {
220 char *name;
221 GLuint program;
222 GLuint vertex;
224 GLuint alpha;
225 GLuint time;
226 GLuint globalpos;
227} MapShader;
228
235 int id;
236 char *filename;
238 /* General. */
239 char* name;
241 int stars;
243 double nebu_hue;
246 double radius;
248 char *features;
250 /* Spobs. */
252 int *spobsid;
256 /* Jumps. */
257 JumpPoint *jumps;
259 /* Asteroids. */
264 /* Calculated. */
265 double *prices;
267 /* Presence. */
272 /* Markers. */
278 /* Map shader. */
280 const MapShader *ms;
282 /* Economy. */
283 CommodityPrice *averagePrice;
284
285 /* Misc. */
286 char **tags;
287 unsigned int flags;
289 char *note;
291};
292
293/* Some useful externs. */
294extern StarSystem *cur_system;
295extern int space_spawn;
297/*
298 * loading/exiting
299 */
300void space_init( const char* sysname, int do_simulate );
301int space_load (void);
302int space_loadLua (void);
303void space_exit (void);
304
305/*
306 * spob stuff
307 */
308Spob *spob_new (void);
309const char *spob_name( const Spob *p );
310int spob_luaInit( Spob *spb );
311void spob_gfxLoad( Spob *p );
312int spob_hasSystem( const Spob *spb );
313char* spob_getSystem( const char* spobname );
314Spob* spob_getAll (void);
315Spob* spob_get( const char* spobname );
316Spob* spob_getIndex( int ind );
317void spob_setKnown( Spob *p );
318int spob_index( const Spob *p );
319int spob_exists( const char* spobname );
320const char *spob_existsCase( const char* spobname );
321char **spob_searchFuzzyCase( const char* spobname, int *n );
322const char* spob_getServiceName( int service );
323int spob_getService( const char *name );
324const char* spob_getClassName( const char *class );
325credits_t spob_commodityPrice( const Spob *p, const Commodity *c );
326credits_t spob_commodityPriceAtTime( const Spob *p, const Commodity *c, ntime_t t );
327int spob_averageSpobPrice( const Spob *p, const Commodity *c, credits_t *mean, double *std);
328void spob_averageSeenPricesAtTime( const Spob *p, const ntime_t tupdate );
329/* Misc modification. */
330int spob_setFaction( Spob *p, int faction );
332int spob_addService( Spob *p, int service );
333int spob_rmService( Spob *p, int service );
334/* Land related stuff. */
335char spob_getColourChar( const Spob *p );
336const char *spob_getSymbol( const Spob *p );
337const glColour* spob_getColour( const Spob *p );
338void spob_updateLand( Spob *p );
339/* Lua stuff. */
340void spob_luaInitMem( const Spob *spob );
341
342/*
343 * Virtual spob stuff.
344 */
346VirtualSpob* virtualspob_get( const char *name );
347
348/*
349 * jump stuff
350 */
351JumpPoint* jump_get( const char* jumpname, const StarSystem* sys );
352JumpPoint* jump_getTarget( const StarSystem* target, const StarSystem* sys );
353const char *jump_getSymbol( const JumpPoint *jp );
354
355/*
356 * system adding/removing stuff.
357 */
358void system_reconstructJumps( StarSystem *sys );
359void systems_reconstructJumps (void);
360void systems_reconstructSpobs (void);
361StarSystem *system_new (void);
362int system_addSpob( StarSystem *sys, const char *spobname );
363int system_rmSpob( StarSystem *sys, const char *spobname );
364int system_addVirtualSpob( StarSystem *sys, const char *spobname );
365int system_rmVirtualSpob( StarSystem *sys, const char *spobname );
366int system_addJumpDiff( StarSystem *sys, xmlNodePtr node );
367int system_rmJump( StarSystem *sys, const char *jumpname );
368
369/*
370 * render
371 */
372void space_render( const double dt );
373void space_renderOverlay( const double dt );
374void spobs_render (void);
375
376/*
377 * Presence stuff.
378 */
379void system_presenceCleanupAll (void);
380void system_presenceAddSpob( StarSystem *sys, const SpobPresence *ap );
381double system_getPresence( const StarSystem *sys, int faction );
382double system_getPresenceFull( const StarSystem *sys, int faction, double *base, double *bonus );
383void system_addAllSpobsPresence( StarSystem *sys );
384void space_reconstructPresences( void );
385void system_rmCurrentPresence( StarSystem *sys, int faction, double amount );
386
387/*
388 * update.
389 */
390void space_update( double dt, double real_dt );
391int space_isSimulation (void);
393
394/*
395 * Graphics.
396 */
397void space_gfxLoad( StarSystem *sys );
398void space_gfxUnload( StarSystem *sys );
399
400/*
401 * Getting stuff.
402 */
403StarSystem* system_getAll (void);
404const char *system_existsCase( const char* sysname );
405char **system_searchFuzzyCase( const char* sysname, int *n );
406StarSystem* system_get( const char* sysname );
407StarSystem* system_getIndex( int id );
408int system_index( const StarSystem *sys );
409int space_sysReachable( const StarSystem *sys );
410int space_sysReallyReachable( char* sysname );
411int space_sysReachableFromSys( const StarSystem *target, const StarSystem *sys );
412char** space_getFactionSpob( int *factions, int landable );
413const char* space_getRndSpob( int landable, unsigned int services,
414 int (*filter)(Spob *p));
415double system_getClosest( const StarSystem *sys, int *pnt, int *jp, int *ast, int *fie, double x, double y );
416double system_getClosestAng( const StarSystem *sys, int *pnt, int *jp, int *ast, int *fie, double x, double y, double ang );
417
418/*
419 * Markers.
420 */
421int space_addMarker( int sys, MissionMarkerType type );
422int space_rmMarker( int sys, MissionMarkerType type );
423void space_clearKnown (void);
424void space_clearMarkers (void);
426int system_hasSpob( const StarSystem *sys );
427
428/*
429 * Hyperspace.
430 */
431int space_jumpDistance( const Pilot *p, const JumpPoint *jp );
432int space_canHyperspace( const Pilot *p);
433int space_hyperspace( Pilot *p );
434int space_calcJumpInPos( const StarSystem *in, const StarSystem *out, vec2 *pos, vec2 *vel, double *dir, const Pilot *p );
435
436/*
437 * Misc.
438 */
439void system_updateAsteroids( StarSystem *sys );
440void system_setFaction( StarSystem *sys );
441void space_checkLand (void);
442void space_factionChange (void);
443void space_queueLand( Spob *pnt );
444const char *space_populationStr( uint64_t population );
static double real_dt
Definition: naev.c:113
static const double c[]
Definition: rng.c:264
void space_reconstructPresences(void)
Reset the presence of all systems.
Definition: space.c:4220
void space_init(const char *sysname, int do_simulate)
Initializes the system.
Definition: space.c:1501
double system_getClosestAng(const StarSystem *sys, int *pnt, int *jp, int *ast, int *fie, double x, double y, double ang)
Gets the feature nearest to directly ahead of a position in the system.
Definition: space.c:734
int system_addJumpDiff(StarSystem *sys, xmlNodePtr node)
Adds a jump point to a star system from a diff.
Definition: space.c:2531
void spob_averageSeenPricesAtTime(const Spob *p, const ntime_t tupdate)
Adds cost of commodities on spob p to known statistics at time t.
Definition: space.c:299
double system_getClosest(const StarSystem *sys, int *pnt, int *jp, int *ast, int *fie, double x, double y)
Gets the closest feature to a position in the system.
Definition: space.c:655
int spob_exists(const char *spobname)
Check to see if a spob exists.
Definition: space.c:1082
void system_rmCurrentPresence(StarSystem *sys, int faction, double amount)
Removes active presence.
Definition: space.c:4269
void space_gfxUnload(StarSystem *sys)
Unloads all the graphics for a star system.
Definition: space.c:2068
int space_canHyperspace(const Pilot *p)
Checks to make sure if pilot is far enough away to hyperspace.
Definition: space.c:437
void space_render(const double dt)
Renders the system.
Definition: space.c:3395
int spob_luaInit(Spob *spob)
Updatse the spob's internal Lua stuff.
Definition: space.c:1942
void systems_reconstructJumps(void)
Reconstructs the jumps.
Definition: space.c:2671
int space_jumpDistance(const Pilot *p, const JumpPoint *jp)
Distance at which a pilot can jump.
Definition: space.c:423
const glColour * spob_getColour(const Spob *p)
Gets the spob colour.
Definition: space.c:1875
int space_rmMarker(int objid, MissionMarkerType type)
Removes a marker from a system.
Definition: space.c:3829
int spob_averageSpobPrice(const Spob *p, const Commodity *c, credits_t *mean, double *std)
Gets the average price of a commodity at a spob that has been seen so far.
Definition: space.c:312
double system_getPresenceFull(const StarSystem *sys, int faction, double *base, double *bonus)
Get the presence of a faction in a system.
Definition: space.c:4167
int space_isSimulationEffects(void)
returns whether or not we're simulating with effects.
Definition: space.c:1490
Spob * spob_getAll(void)
Gets an array (array.h) of all spobs.
Definition: space.c:1063
int space_sysReallyReachable(char *sysname)
Sees if a system can be reached via jumping.
Definition: space.c:814
int spob_getService(const char *name)
Converts name to spob service flag.
Definition: space.c:184
void system_setFaction(StarSystem *sys)
Sets the system faction based on the spobs it has.
Definition: space.c:3017
Spob * spob_get(const char *spobname)
Gets a spob based on its name.
Definition: space.c:1006
void space_factionChange(void)
Mark when a faction changes.
Definition: space.c:1344
int system_addVirtualSpob(StarSystem *sys, const char *spobname)
Adds a virtual spob to a system.
Definition: space.c:2466
const char * space_getRndSpob(int landable, unsigned int services, int(*filter)(Spob *p))
Gets the name of a random spob.
Definition: space.c:601
int system_rmJump(StarSystem *sys, const char *jumpname)
Removes a jump point from a star system.
Definition: space.c:2550
void space_update(double dt, double real_dt)
Controls fleet spawning.
Definition: space.c:1366
StarSystem * system_getIndex(int id)
Get the system by its index.
Definition: space.c:944
int spob_index(const Spob *p)
Gets the ID of a spob.
Definition: space.c:1055
int spob_hasSystem(const Spob *spb)
Get whether or not a spob has a system (i.e. is on the map).
Definition: space.c:966
const char * jump_getSymbol(const JumpPoint *jp)
Gets the jump point symbol.
Definition: space.c:1212
const char * spob_getSymbol(const Spob *p)
Gets the spob symbol.
Definition: space.c:1853
void space_renderOverlay(const double dt)
Renders the system overlay.
Definition: space.c:3411
int spob_setFaction(Spob *p, int faction)
Changes the spobs faction.
Definition: space.c:345
char spob_getColourChar(const Spob *p)
Gets the spob colour char.
Definition: space.c:1834
StarSystem * system_new(void)
Creates a new star system.
Definition: space.c:2601
int space_sysReachable(const StarSystem *sys)
Sees if a system is reachable.
Definition: space.c:794
JumpPoint * jump_getTarget(const StarSystem *target, const StarSystem *sys)
Less safe version of jump_get that works with pointers.
Definition: space.c:1198
const char * system_existsCase(const char *sysname)
Checks to see if a system exists case insensitively.
Definition: space.c:858
StarSystem * system_getAll(void)
Gets an array (array.h) of all star systems.
Definition: space.c:847
char ** spob_searchFuzzyCase(const char *spobname, int *n)
Does a fuzzy case matching. Searches spob_name() but returns internal names.
Definition: space.c:1107
int space_sysReachableFromSys(const StarSystem *target, const StarSystem *sys)
Sees if a system is reachable from another system.
Definition: space.c:833
char ** system_searchFuzzyCase(const char *sysname, int *n)
Does a fuzzy case matching. Searches translated names but returns internal names.
Definition: space.c:869
StarSystem * system_get(const char *sysname)
Get the system from its name.
Definition: space.c:914
char * spob_getSystem(const char *spobname)
Get the name of a system from a spobname.
Definition: space.c:980
int space_calcJumpInPos(const StarSystem *in, const StarSystem *out, vec2 *pos, vec2 *vel, double *dir, const Pilot *p)
Calculates the jump in pos for a pilot.
Definition: space.c:495
int spob_rmService(Spob *p, int service)
Removes a service from a spob.
Definition: space.c:414
void system_updateAsteroids(StarSystem *sys)
Updates some internal calculations about asteroids in a system.
Definition: space.c:322
void spob_setKnown(Spob *p)
Sets a spob's known status, if it's real.
Definition: space.c:1071
void spobs_render(void)
Renders the current systems' spobs.
Definition: space.c:3430
StarSystem * cur_system
Definition: space.c:105
const char * spob_existsCase(const char *spobname)
Check to see if a spob exists (case insensitive).
Definition: space.c:1096
int system_addSpob(StarSystem *sys, const char *spobname)
Adds a spob to a star system.
Definition: space.c:2372
void space_exit(void)
Cleans up the system.
Definition: space.c:3518
int space_addMarker(int objid, MissionMarkerType type)
Adds a marker to a system.
Definition: space.c:3743
double system_getPresence(const StarSystem *sys, int faction)
Get the presence of a faction in a system.
Definition: space.c:4138
void spob_updateLand(Spob *p)
Updates the land possibilities of a spob.
Definition: space.c:1896
void spob_gfxLoad(Spob *spob)
Loads a spob's graphics (and radius).
Definition: space.c:2019
int system_rmVirtualSpob(StarSystem *sys, const char *spobname)
Removes a virtual spob from a system.
Definition: space.c:2490
void space_clearMarkers(void)
Clears all system markers.
Definition: space.c:3652
VirtualSpob * virtualspob_getAll(void)
Gets all the virtual spobs.
Definition: space.c:1138
Spob * spob_getIndex(int ind)
Gets spob by index.
Definition: space.c:1038
void system_presenceAddSpob(StarSystem *sys, const SpobPresence *ap)
Adds (or removes) some presence to a system.
Definition: space.c:4010
VirtualSpob * virtualspob_get(const char *name)
Gets a virtual spob by matching name.
Definition: space.c:1157
void space_clearKnown(void)
Clears all system knowledge.
Definition: space.c:3633
void system_addAllSpobsPresence(StarSystem *sys)
Go through all the spobs and call system_addPresence().
Definition: space.c:4197
int spob_addCommodity(Spob *p, Commodity *c)
Adds a commodity to a spob.
Definition: space.c:358
const char * space_populationStr(uint64_t population)
Gets the population in an approximated string. Note this function changes the string value each call,...
Definition: space.c:4332
int system_hasSpob(const StarSystem *sys)
See if the system has a spob.
Definition: space.c:4251
int spob_addService(Spob *p, int service)
Removes a service from a spob.
Definition: space.c:372
const char * spob_name(const Spob *p)
Gets the translated name of a spob.
Definition: space.c:1705
const char * spob_getClassName(const char *class)
Gets the long class name for a spob.
Definition: space.c:213
void space_clearComputerMarkers(void)
Clears all the system computer markers.
Definition: space.c:3672
void space_queueLand(Spob *pnt)
Cues a spob to be landed on. This is not done immediately, but when the engine thinks it is ok to do.
Definition: space.c:4321
char ** space_getFactionSpob(int *factions, int landable)
Gets the name of all the spobs that belong to factions.
Definition: space.c:558
int space_spawn
Definition: space.c:116
credits_t spob_commodityPrice(const Spob *p, const Commodity *c)
Gets the price of a commodity at a spob.
Definition: space.c:272
const char * spob_getServiceName(int service)
Gets the (English) name for a service code.
Definition: space.c:165
void systems_reconstructSpobs(void)
Updates the system spob pointers.
Definition: space.c:2683
Spob * spob_new(void)
Creates a new spob.
Definition: space.c:1659
void spob_luaInitMem(const Spob *spob)
Initializes the memory fo a spob.
Definition: space.c:1931
JumpPoint * jump_get(const char *jumpname, const StarSystem *sys)
Gets a jump point based on its target and system.
Definition: space.c:1174
void space_checkLand(void)
Handles landing if necessary.
Definition: space.c:1352
glTexture * jumppoint_gfx
Definition: space.c:106
void space_gfxLoad(StarSystem *sys)
Loads all the graphics for a star system.
Definition: space.c:2057
int space_hyperspace(Pilot *p)
Tries to get the pilot into hyperspace.
Definition: space.c:471
int space_load(void)
Loads the entire universe into ram - pretty big feat eh?
Definition: space.c:3237
int space_isSimulation(void)
returns whether we're just simulating.
Definition: space.c:1482
credits_t spob_commodityPriceAtTime(const Spob *p, const Commodity *c, ntime_t t)
Gets the price of a commodity at a spob at given time.
Definition: space.c:286
int system_index(const StarSystem *sys)
Gets the index of a star system.
Definition: space.c:955
int system_rmSpob(StarSystem *sys, const char *spobname)
Removes a spob from a star system.
Definition: space.c:2411
int space_loadLua(void)
initializes the Lua for all the spobs.
Definition: space.c:3306
void system_reconstructJumps(StarSystem *sys)
Reconstructs the jumps for a single system.
Definition: space.c:2640
Represents an asteroid field anchor.
Definition: asteroid.h:100
Represents an asteroid exclusion zone.
Definition: asteroid.h:121
Represents a commodity.
Definition: commodity.h:43
Represents a jump lane.
Definition: space.h:196
unsigned int flags
Definition: space.h:203
int sx
Definition: space.h:210
int targetid
Definition: space.h:198
double map_alpha
Definition: space.h:206
vec2 pos
Definition: space.h:201
JumpPoint * returnJump
Definition: space.h:200
int sy
Definition: space.h:211
double sina
Definition: space.h:209
double angle
Definition: space.h:205
MapOverlayPos mo
Definition: space.h:212
double cosa
Definition: space.h:208
double radius
Definition: space.h:202
StarSystem * target
Definition: space.h:199
StarSystem * from
Definition: space.h:197
double hide
Definition: space.h:204
Saves the layout decisions from positioning labeled objects on the overlay.
Definition: space.h:56
float text_offx
Definition: space.h:58
float text_width
Definition: space.h:60
float radius
Definition: space.h:57
float text_offy
Definition: space.h:59
Map shader.
Definition: space.h:219
char * name
Definition: space.h:220
GLuint time
Definition: space.h:225
GLuint globalpos
Definition: space.h:226
GLuint projection
Definition: space.h:223
GLuint alpha
Definition: space.h:224
GLuint program
Definition: space.h:221
GLuint vertex
Definition: space.h:222
The representation of an in-game pilot.
Definition: pilot.h:210
Represents relative ship statistics as a linked list.
Definition: shipstats.h:167
Represents the presence of a spob.
Definition: space.h:65
double bonus
Definition: space.h:68
int range
Definition: space.h:69
double base
Definition: space.h:67
int faction
Definition: space.h:66
Represents a Space Object (SPOB), including and not limited to planets, stations, wormholes,...
Definition: space.h:88
int can_land
Definition: space.h:106
Commodity ** commodities
Definition: space.h:114
glTexture * gfx_space
Definition: space.h:119
char * land_msg
Definition: space.h:108
unsigned int services
Definition: space.h:113
int lua_update
Definition: space.h:142
int land_override
Definition: space.h:107
char * gfx_spacePath
Definition: space.h:121
char * gfx_spaceName
Definition: space.h:120
int lua_land
Definition: space.h:140
double radius
Definition: space.h:94
int markers
Definition: space.h:130
char * feature
Definition: space.h:92
char * bar_description
Definition: space.h:112
int lua_comm
Definition: space.h:143
int lua_render
Definition: space.h:141
const SimpleShader * marker
Definition: space.h:95
char * description
Definition: space.h:111
char ** tags
Definition: space.h:126
int lua_mem
Definition: space.h:135
int lua_init
Definition: space.h:136
int lua_load
Definition: space.h:137
tech_group_t * tech
Definition: space.h:116
double map_alpha
Definition: space.h:129
uint64_t population
Definition: space.h:99
char * gfx_exterior
Definition: space.h:122
nlua_env lua_env
Definition: space.h:134
char * name
Definition: space.h:90
char * gfx_exteriorPath
Definition: space.h:123
vec2 pos
Definition: space.h:93
MapOverlayPos mo
Definition: space.h:128
int id
Definition: space.h:89
CommodityPrice * commodityPrice
Definition: space.h:115
double hide
Definition: space.h:103
int lua_can_land
Definition: space.h:139
int lua_unload
Definition: space.h:138
SpobPresence presence
Definition: space.h:102
char * display
Definition: space.h:91
unsigned int flags
Definition: space.h:127
Represents a star system.
Definition: space.h:234
AsteroidAnchor * asteroids
Definition: space.h:260
int spilled
Definition: space.h:269
double nebu_density
Definition: space.h:244
int stars
Definition: space.h:241
char * name
Definition: space.h:239
int markers_low
Definition: space.h:274
ShipStatList * stats
Definition: space.h:288
Spob ** spobs
Definition: space.h:251
char ** tags
Definition: space.h:286
double nebu_hue
Definition: space.h:243
int markers_high
Definition: space.h:275
double * prices
Definition: space.h:265
vec2 pos
Definition: space.h:240
SystemPresence * presence
Definition: space.h:268
JumpPoint * jumps
Definition: space.h:257
VirtualSpob ** spobs_virtual
Definition: space.h:254
double interference
Definition: space.h:242
char * features
Definition: space.h:248
int markers_plot
Definition: space.h:276
char * note
Definition: space.h:289
int claims_soft
Definition: space.h:290
int faction
Definition: space.h:253
double asteroid_density
Definition: space.h:262
int id
Definition: space.h:235
unsigned int flags
Definition: space.h:287
int * spobsid
Definition: space.h:252
char * map_shader
Definition: space.h:279
double nebu_volatility
Definition: space.h:245
double radius
Definition: space.h:246
double ownerpresence
Definition: space.h:270
int markers_computer
Definition: space.h:273
const MapShader * ms
Definition: space.h:280
char * background
Definition: space.h:247
AsteroidExclusion * astexclude
Definition: space.h:261
Represents presence in a system.
Definition: space.h:169
double curUsed
Definition: space.h:174
double value
Definition: space.h:173
double timer
Definition: space.h:175
double base
Definition: space.h:171
int disabled
Definition: space.h:176
double bonus
Definition: space.h:172
int faction
Definition: space.h:170
Basically modifies system parameters without creating any real objects.
Definition: space.h:77
SpobPresence * presences
Definition: space.h:79
char * name
Definition: space.h:78
Abstraction for rendering sprite sheets.
Definition: opengl_tex.h:34
Represents a 2d vector.
Definition: vec2.h:32