author | richk |
Thu, 06 Sep 2007 19:42:48 +0000 | |
branch | NewGRF_ports |
changeset 6869 | 76282d3b748d |
parent 6856 | 0e8e4ebf23ff |
child 10200 | aba3af04cdbd |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
6443
b8f06d8eb7be
(svn r8853) -Cleanup: doxygen changes. Correct forgotten c files to cpp files with the @file tag as well as a few general comments style
belugas
parents:
6367
diff
changeset
|
3 |
/** @file airport.h Various declarations for airports */ |
b8f06d8eb7be
(svn r8853) -Cleanup: doxygen changes. Correct forgotten c files to cpp files with the @file tag as well as a few general comments style
belugas
parents:
6367
diff
changeset
|
4 |
|
0 | 5 |
#ifndef AIRPORT_H |
6 |
#define AIRPORT_H |
|
7 |
||
6853
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
8 |
#include "fsmport.h" |
6818
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
9 |
#include <list> |
5838
9c3129cb019b
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5726
diff
changeset
|
10 |
|
6856
0e8e4ebf23ff
(svn r10959) [NewGRF_ports] -Change: Rename FSMState to FSMCommand. nof_elements changed to num_positions. nof_depots changed to num_depots.
richk
parents:
6854
diff
changeset
|
11 |
typedef FSMCommand AirportFTA; |
6853
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
12 |
typedef FSMPortMovingData AirportMovingData; |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
13 |
|
6739
3f2ca4d0abda
(svn r10738) [NewGRF_ports] -Feature: FSMblockmap class added. Basic FSM import complete. Need to handle multiple blocks on import. Aircraft controller recoded to work with new 128 bit blocks. Still need to write saveload for new blocks.
richk
parents:
6738
diff
changeset
|
14 |
enum {MAX_TERMINALS = 36}; |
3f2ca4d0abda
(svn r10738) [NewGRF_ports] -Feature: FSMblockmap class added. Basic FSM import complete. Need to handle multiple blocks on import. Aircraft controller recoded to work with new 128 bit blocks. Still need to write saveload for new blocks.
richk
parents:
6738
diff
changeset
|
15 |
enum {MAX_HELIPADS = 24}; |
3701
13911c5df3e7
(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
|
16 |
enum {MAX_ELEMENTS = 255}; |
6715
ce1614834bc3
(svn r9507) [NewGRF_ports] -Codechange: Moved airport state definitions into their own separate file to permit better logical grouping of state machine related data & code.
richk
parents:
6574
diff
changeset
|
17 |
enum {MAX_HEADINGS = 30}; |
0 | 18 |
|
19 |
// Airport types |
|
20 |
enum { |
|
4344
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
21 |
AT_SMALL = 0, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
22 |
AT_LARGE = 1, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
23 |
AT_HELIPORT = 2, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
24 |
AT_METROPOLITAN = 3, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
25 |
AT_INTERNATIONAL = 4, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
26 |
AT_COMMUTER = 5, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
27 |
AT_HELIDEPOT = 6, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
28 |
AT_INTERCON = 7, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4171
diff
changeset
|
29 |
AT_HELISTATION = 8, |
6719
4cc327ad39d5
(svn r10027) [NewGRF_ports] -Sync: with trunk r9506-10026
richk
parents:
6715
diff
changeset
|
30 |
AT_OILRIG = 15, |
4cc327ad39d5
(svn r10027) [NewGRF_ports] -Sync: with trunk r9506-10026
richk
parents:
6715
diff
changeset
|
31 |
AT_DUMMY = 255 |
0 | 32 |
}; |
33 |
||
6837
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
34 |
/* Airport movements & speeds */ |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
35 |
enum { |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
36 |
AMED_EXACTPOS = 1 << 0, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
37 |
AMED_NOSPDCLAMP = 1 << 4, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
38 |
AMED_SLOWTURN = 1 << 5, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
39 |
AMED_BRAKE = 1 << 6, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
40 |
AMED_HOLD = 1 << 7, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
41 |
AMED_LAND = 1 << 8, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
42 |
AMED_HELI_RAISE = 1 << 8, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
43 |
AMED_TAKEOFF = 1 << 8, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
44 |
AMED_HELI_LOWER = 1 << 8, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
45 |
}; |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
46 |
|
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
47 |
/* Movement States on Airports (headings target) */ |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
48 |
enum { |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
49 |
TO_ALL = 0x00, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
50 |
FIRST_TERMINAL = 0x01, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
51 |
LAST_TERMINAL = 0x24, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
52 |
FIRST_HELIPAD = 0x25, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
53 |
LAST_HELIPAD = 0x3C, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
54 |
HANGAR = 0x40, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
55 |
TAKEOFF = 0x41, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
56 |
STARTTAKEOFF = 0x42, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
57 |
ENDTAKEOFF = 0x43, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
58 |
LANDING = 0x44, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
59 |
ENDLANDING = 0x45, |
6869
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
60 |
SMALLHANGAR = 0x48, |
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
61 |
SMALLTAKEOFF = 0x49, /* Only used in movement command choices. If used as the heading in the first command element, treated as TAKEOFF. |
6837
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
62 |
* This is best placed on the TAKEOFF line at the start of the runway. The aircraft will make the acceleration noise, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
63 |
* and then you give the instruction of where to go to for the SHORTTAKEOFF instruction sequence. eg.: |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
64 |
* { 40, TAKEOFF, RUNWAY_OUT_block, 0 }, { 40, SHORTTAKEOFF, RUNWAY_OUT_block2, 42 }, { 40, 0, RUNWAY_OUT_block2, 41 }, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
65 |
*/ |
6869
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
66 |
SMALLSTARTTAKEOFF = 0x4A, |
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
67 |
SMALLENDTAKEOFF = 0x4B, |
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
68 |
SMALLLANDING = 0x4C, |
76282d3b748d
(svn r11051) [NewGRF_ports] -Feature: Added SHORT TAKEOFF capability.
richk
parents:
6856
diff
changeset
|
69 |
SMALLENDLANDING = 0x4D, |
6837
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
70 |
HELITAKEOFF = 0x51, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
71 |
HELIENDTAKEOFF = 0x53, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
72 |
HELILANDING = 0x54, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
73 |
HELIENDLANDING = 0x55, |
6845
666878d09b80
(svn r10943) [NewGRF_ports] -Change: Hangar terminal selection now checks for presence of a Choose Term/Helipad command. Usefully this can be *after* the TO_ALL, so ordinary processing will not pick up a secondary terminal reassignment.
richk
parents:
6837
diff
changeset
|
74 |
CHOOSEHELIPAD = 0x7D, |
666878d09b80
(svn r10943) [NewGRF_ports] -Change: Hangar terminal selection now checks for presence of a Choose Term/Helipad command. Usefully this can be *after* the TO_ALL, so ordinary processing will not pick up a secondary terminal reassignment.
richk
parents:
6837
diff
changeset
|
75 |
CHOOSETERMINAL = 0x7E, |
6837
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
76 |
FLYING = 0x7F, |
c39d50afbaf0
(svn r10920) [NewGRF_ports] -Cleanup: remove the tables/files that were used to define airports as they will all be defined in a NewGRF and we do not need them anymore.
rubidium
parents:
6818
diff
changeset
|
77 |
}; |
5838
9c3129cb019b
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5726
diff
changeset
|
78 |
|
0 | 79 |
// Finite sTate mAchine --> FTA |
6853
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
80 |
struct AirportFTAClass : FSMPortClass { |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
81 |
public: |
6854
92ca286e9466
(svn r10957) [NewGRF_ports] -Codechange: reduce the dependency on AT_XXX enums and airport_type.
rubidium
parents:
6853
diff
changeset
|
82 |
static AirportFTAClass *oil_rig; ///< "Special" holding pattern used for oil rigs. |
92ca286e9466
(svn r10957) [NewGRF_ports] -Codechange: reduce the dependency on AT_XXX enums and airport_type.
rubidium
parents:
6853
diff
changeset
|
83 |
static AirportFTAClass *dummy; ///< A dummy holding pattern to be used when an airport has been removed, but the order to go to the airport has not been removed. |
92ca286e9466
(svn r10957) [NewGRF_ports] -Codechange: reduce the dependency on AT_XXX enums and airport_type.
rubidium
parents:
6853
diff
changeset
|
84 |
|
6853
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
85 |
enum Flags { |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
86 |
AIRPLANES = 0x1, |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
87 |
HELICOPTERS = 0x2, |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
88 |
ALL = AIRPLANES | HELICOPTERS, |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
89 |
SHORT_STRIP = 0x4, |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
90 |
SEAPLANES = 0x8 |
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
91 |
}; |
6350 | 92 |
|
6854
92ca286e9466
(svn r10957) [NewGRF_ports] -Codechange: reduce the dependency on AT_XXX enums and airport_type.
rubidium
parents:
6853
diff
changeset
|
93 |
AirportFTAClass(FSMportsSpec *spec) : FSMPortClass(spec), terminals(NULL), helipads(NULL), flags((Flags)0), entry_points(NULL) {} |
6183 | 94 |
|
6853
b3b8bb6c0a48
(svn r10956) [NewGRF_ports] -Codechange: start refactoring the airport specific code to be more generic so it can be used for non-aircraft ports too.
rubidium
parents:
6845
diff
changeset
|
95 |
~AirportFTAClass(); |
6183 | 96 |
|
6737
2b971fcc9a08
(svn r10682) [NewGRF_ports] -Feature: Added code to import FSM from within the newgrf, and allocate to compatible structures within Airport. Eventually, it will load to its own dedicated structures.
richk
parents:
6734
diff
changeset
|
97 |
byte *terminals; |
2b971fcc9a08
(svn r10682) [NewGRF_ports] -Feature: Added code to import FSM from within the newgrf, and allocate to compatible structures within Airport. Eventually, it will load to its own dedicated structures.
richk
parents:
6734
diff
changeset
|
98 |
byte *helipads; |
6350 | 99 |
Flags flags; |
6737
2b971fcc9a08
(svn r10682) [NewGRF_ports] -Feature: Added code to import FSM from within the newgrf, and allocate to compatible structures within Airport. Eventually, it will load to its own dedicated structures.
richk
parents:
6734
diff
changeset
|
100 |
byte *entry_points; ///< when an airplane arrives at this airport, enter it at position entry_point, index depends on direction |
6574
e1d1a12faaf7
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6573
diff
changeset
|
101 |
}; |
0 | 102 |
|
6351 | 103 |
DECLARE_ENUM_AS_BIT_SET(AirportFTAClass::Flags) |
104 |
||
6818
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
105 |
/** |
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
106 |
* Get a list of currently available airports. |
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
107 |
* @return the list with available airports. |
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
108 |
* @note return is "class index" << 8 | "index within class" |
1784
6eb3ab1bc33c
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
109 |
*/ |
6818
8c977ca780fe
(svn r10898) [NewGRF_ports] -Codechange: replace GetAirport and GetValidAiports by GetAvailableAirports which gives a list of available airports that (primarily) AIs can iterate over.
rubidium
parents:
6805
diff
changeset
|
110 |
std::list<uint16> GetAvailableAirports(); |
1784
6eb3ab1bc33c
(svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
Darkvater
parents:
1093
diff
changeset
|
111 |
|
0 | 112 |
#endif /* AIRPORT_H */ |