naev 0.11.5
safelanes.h
1/*
2 * See Licensing and Copyright notice in naev.h
3 */
4#pragma once
5
6#include "space.h"
7
8/* Bit flags to specify what standing to get. */
9#define SAFELANES_FRIENDLY (1<<0)
10#define SAFELANES_NEUTRAL (1<<1)
11#define SAFELANES_HOSTILE (1<<3)
16typedef enum SafeLaneLocType_ {
17 SAFELANE_LOC_SPOB,
18 SAFELANE_LOC_DEST_SYS,
19} SafeLaneLocType;
20
24typedef struct SafeLane_ {
25 int faction;
26 SafeLaneLocType point_type[2];
27 int point_id[2];
28 double map_alpha;
29} SafeLane;
30
31void safelanes_init (void);
32void safelanes_destroy (void);
33SafeLane* safelanes_get( int faction, int standing, const StarSystem* system );
34void safelanes_recalculate (void);
35int safelanes_calculated (void);
int safelanes_calculated(void)
Whether or not the safe lanes have been calculated at least once.
Definition safelanes.c:276
void safelanes_destroy(void)
Shuts down the safelanes system.
Definition safelanes.c:176
void safelanes_init(void)
Initializes the safelanes system.
Definition safelanes.c:164
void safelanes_recalculate(void)
Update the safe lane locations in response to the universe changing (e.g., diff applied).
Definition safelanes.c:252
SafeLane * safelanes_get(int faction, int standing, const StarSystem *system)
Gets a set of safelanes for a faction and system.
Definition safelanes.c:190
Describes a safe lane, patrolled by a faction, within a system.
Definition safelanes.h:24
int faction
Definition safelanes.h:25
double map_alpha
Definition safelanes.h:28