GRVX_EXPORT void grvx_delete_game(GrvxGameHandle handle)
Deletes a game instance.
Definition: game.c:139
GRVX_EXPORT GrvxGameHandle grvx_init_game(GrvxPlanetsHandle planets)
Initializes a new game from a set of planets.
Definition: game.c:125
GRVX_EXPORT struct GrvxMissileObservation * grvx_observe_or_tick(GrvxGameHandle game, uint32_t *t)
Returns a new observation or advances time.
GRVX_EXPORT int32_t grvx_request_launch(GrvxGameHandle game, uint32_t planet_id, struct GrvxMissileLaunch *missile, double dt)
Requests a missile launch.
struct GrvxGame * GrvxGameHandle
Handle to a game.
Definition: game.h:49
GRVX_EXPORT int32_t grvx_rnd_init_planets(GrvxPlanetsHandle planets, uint32_t *seed, double min_dist)
Initializes planets randomly.
Settings of a scheduled missile launch.
Definition: game.h:56
double dt_end
Self-destruction.
Definition: game.h:78
double dt_ping
Ping.
Definition: game.h:70
double v
Initial velocity.
Definition: game.h:86
double t_start
Launch.
Definition: game.h:62
double psi
Initial orientation.
Definition: game.h:93
Observation of a missile.
Definition: game.h:103
double lon
Longitude.
Definition: game.h:131
double lat
Latitude.
Definition: game.h:124
uint32_t planet_id
Planet ID if a planet was hit.
Definition: game.h:110
double t
Tick of observation.
Definition: game.h:117
Set of planets.
Definition: planet.h:20