author | tron |
Mon, 05 Jun 2006 16:08:06 +0000 | |
changeset 3968 | 3dbc765cc171 |
parent 3876 | 468642825a10 |
child 4059 | b1e1c1193f0a |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
0 | 3 |
#ifndef AIRPORT_H |
4 |
#define AIRPORT_H |
|
5 |
||
6 |
enum {MAX_TERMINALS = 6}; |
|
7 |
enum {MAX_HELIPADS = 2}; |
|
3701
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
8 |
enum {MAX_ELEMENTS = 255}; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
9 |
enum {MAX_HEADINGS = 18}; |
0 | 10 |
|
11 |
// Airport types |
|
12 |
enum { |
|
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
13 |
AT_SMALL = 0, |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
14 |
AT_LARGE = 1, |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
15 |
AT_HELIPORT = 2, |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
16 |
AT_METROPOLITAN = 3, |
0 | 17 |
AT_INTERNATIONAL = 4, |
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
18 |
AT_OILRIG = 15, |
0 | 19 |
}; |
20 |
||
21 |
// do not change unless you change v->subtype too. This aligns perfectly with its current setting |
|
22 |
enum { |
|
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
23 |
AIRCRAFT_ONLY = 0, |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
24 |
ALL = 1, |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
25 |
HELICOPTERS_ONLY = 2, |
0 | 26 |
}; |
27 |
||
3701
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
28 |
enum { |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
29 |
AMED_NOSPDCLAMP = 1<<0, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
30 |
AMED_TAKEOFF = 1<<1, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
31 |
AMED_SLOWTURN = 1<<2, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
32 |
AMED_LAND = 1<<3, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
33 |
AMED_EXACTPOS = 1<<4, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
34 |
AMED_BRAKE = 1<<5, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
35 |
AMED_HELI_RAISE = 1<<6, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
36 |
AMED_HELI_LOWER = 1<<7, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
37 |
}; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
38 |
|
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
39 |
/* Movement States on Airports (headings target) */ |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
40 |
enum { |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
41 |
TO_ALL, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
42 |
HANGAR, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
43 |
TERM1, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
44 |
TERM2, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
45 |
TERM3, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
46 |
TERM4, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
47 |
TERM5, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
48 |
TERM6, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
49 |
HELIPAD1, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
50 |
HELIPAD2, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
51 |
TAKEOFF, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
52 |
STARTTAKEOFF, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
53 |
ENDTAKEOFF, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
54 |
HELITAKEOFF, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
55 |
FLYING, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
56 |
LANDING, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
57 |
ENDLANDING, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
58 |
HELILANDING, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
59 |
HELIENDLANDING, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
60 |
}; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
61 |
|
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
62 |
/* Movement Blocks on Airports */ |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
63 |
// blocks (eg_airport_flags) |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
64 |
enum { |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
65 |
TERM1_block = 1 << 0, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
66 |
TERM2_block = 1 << 1, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
67 |
TERM3_block = 1 << 2, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
68 |
TERM4_block = 1 << 3, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
69 |
TERM5_block = 1 << 4, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
70 |
TERM6_block = 1 << 5, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
71 |
HELIPAD1_block = 1 << 6, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
72 |
HELIPAD2_block = 1 << 7, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
73 |
RUNWAY_IN_OUT_block = 1 << 8, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
74 |
RUNWAY_IN_block = 1 << 8, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
75 |
AIRPORT_BUSY_block = 1 << 8, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
76 |
RUNWAY_OUT_block = 1 << 9, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
77 |
TAXIWAY_BUSY_block = 1 << 10, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
78 |
OUT_WAY_block = 1 << 11, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
79 |
IN_WAY_block = 1 << 12, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
80 |
AIRPORT_ENTRANCE_block = 1 << 13, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
81 |
TERM_GROUP1_block = 1 << 14, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
82 |
TERM_GROUP2_block = 1 << 15, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
83 |
HANGAR2_AREA_block = 1 << 16, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
84 |
TERM_GROUP2_ENTER1_block = 1 << 17, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
85 |
TERM_GROUP2_ENTER2_block = 1 << 18, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
86 |
TERM_GROUP2_EXIT1_block = 1 << 19, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
87 |
TERM_GROUP2_EXIT2_block = 1 << 20, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
88 |
PRE_HELIPAD_block = 1 << 21, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
89 |
NOTHING_block = 1 << 30, |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
90 |
}; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
91 |
|
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
92 |
typedef struct AirportMovingData { |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
93 |
int x,y; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
94 |
byte flag; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
95 |
byte direction; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
96 |
} AirportMovingData; |
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
97 |
|
0 | 98 |
// Finite sTate mAchine --> FTA |
99 |
typedef struct AirportFTAClass { |
|
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
100 |
byte nofelements; // number of positions the airport consists of |
950
165341d74973
(svn r1440) -Feature: Allows more flexible airport layouts now, as the number of
celestar
parents:
909
diff
changeset
|
101 |
const byte *terminals; |
165341d74973
(svn r1440) -Feature: Allows more flexible airport layouts now, as the number of
celestar
parents:
909
diff
changeset
|
102 |
const byte *helipads; |
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
103 |
byte entry_point; // when an airplane arrives at this airport, enter it at position entry_point |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
104 |
byte acc_planes; // accept airplanes or helicopters or both |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
105 |
const TileIndexDiffC *airport_depots; // gives the position of the depots on the airports |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
106 |
byte nof_depots; // number of depots this airport has |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
107 |
struct AirportFTA *layout; // state machine for airport |
3876
468642825a10
(svn r4918) Move the information about the size of airports from an global array into the struct which describes an airport
tron
parents:
3701
diff
changeset
|
108 |
byte size_x; |
468642825a10
(svn r4918) Move the information about the size of airports from an global array into the struct which describes an airport
tron
parents:
3701
diff
changeset
|
109 |
byte size_y; |
0 | 110 |
} AirportFTAClass; |
111 |
||
112 |
// internal structure used in openttd - Finite sTate mAchine --> FTA |
|
113 |
typedef struct AirportFTA { |
|
3697
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
114 |
byte position; // the position that an airplane is at |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
115 |
byte next_position; // next position from this position |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
116 |
uint32 block; // 32 bit blocks (st->airport_flags), should be enough for the most complex airports |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
117 |
byte heading; // heading (current orders), guiding an airplane to its target on an airport |
ed277943a0fc
(svn r4638) - Codestyle: replacing aligning tabs with spaces
peter1138
parents:
2186
diff
changeset
|
118 |
struct AirportFTA *next_in_chain; // possible extra movement choices from this position |
0 | 119 |
} AirportFTA; |
120 |
||
1093
4fdc46eaf423
(svn r1594) Convert all undefined parameter lists to (void) and add the appropriate warning flags in the Makefile
tron
parents:
950
diff
changeset
|
121 |
void InitializeAirports(void); |
4fdc46eaf423
(svn r1594) Convert all undefined parameter lists to (void) and add the appropriate warning flags in the Makefile
tron
parents:
950
diff
changeset
|
122 |
void UnInitializeAirports(void); |
0 | 123 |
const AirportFTAClass* GetAirport(const byte airport_type); |
3701
fdbb6bcab8a2
(svn r4642) - Codechange: reorganise airport.h and airport_movement.h to avoid having 8 copies of the airport FTAs, and make the enums used available elsewhere.
peter1138
parents:
3697
diff
changeset
|
124 |
const AirportMovingData *GetAirportMovingData(byte airport_type, byte position); |
0 | 125 |
|
1784
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
126 |
/** Get buildable airport bitmask. |
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
127 |
* @return get all buildable airports at this given time, bitmasked. |
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
128 |
* Bit 0 means the small airport is buildable, etc. |
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
129 |
* @todo set availability of airports by year, instead of airplane |
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
130 |
*/ |
2159
f6284cf5fab0
(svn r2669) Shuffle some more stuff around to reduce dependencies
tron
parents:
2153
diff
changeset
|
131 |
uint32 GetValidAirports(void); |
1784
d0698aac0c2e
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
132 |
|
0 | 133 |
#endif /* AIRPORT_H */ |