diff options
author | yexo <yexo@openttd.org> | 2010-03-06 16:02:07 +0000 |
---|---|---|
committer | yexo <yexo@openttd.org> | 2010-03-06 16:02:07 +0000 |
commit | f7691a95d78592b428815f690a829fc6d35e7c5d (patch) | |
tree | 5e288b454ad7b652577219e574f766a346d29d72 | |
parent | 20e05f878cc9110d5a7540b6042a04cf2b2d5d5e (diff) | |
download | openttd-f7691a95d78592b428815f690a829fc6d35e7c5d.tar.xz |
(svn r19354) -Codechange: store the number of layouts in AirportSpec
-rw-r--r-- | src/newgrf_airport.cpp | 2 | ||||
-rw-r--r-- | src/newgrf_airport.h | 1 | ||||
-rw-r--r-- | src/table/airport_defaults.h | 12 |
3 files changed, 9 insertions, 6 deletions
diff --git a/src/newgrf_airport.cpp b/src/newgrf_airport.cpp index c9eac9ec0..689b5204a 100644 --- a/src/newgrf_airport.cpp +++ b/src/newgrf_airport.cpp @@ -20,7 +20,7 @@ static AirportClass _airport_classes[APC_MAX]; -AirportSpec AirportSpec::dummy = {NULL, NULL, NULL, 0, 0, 0, 0, 0, MIN_YEAR, MIN_YEAR, STR_NULL, ATP_TTDP_LARGE, APC_BEGIN, false}; +AirportSpec AirportSpec::dummy = {NULL, NULL, 0, NULL, 0, 0, 0, 0, 0, MIN_YEAR, MIN_YEAR, STR_NULL, ATP_TTDP_LARGE, APC_BEGIN, false}; AirportSpec AirportSpec::specs[NUM_AIRPORTS]; diff --git a/src/newgrf_airport.h b/src/newgrf_airport.h index 495ca8ac5..61f7b66e1 100644 --- a/src/newgrf_airport.h +++ b/src/newgrf_airport.h @@ -51,6 +51,7 @@ enum TTDPAirportType { struct AirportSpec { const struct AirportFTAClass *fsm; ///< the finite statemachine for the default airports const AirportTileTable * const *table; ///< list of the tiles composing the airport + byte num_table; ///< number of elements in the table const TileIndexDiffC *depot_table; ///< gives the position of the depots on the airports byte nof_depots; ///< the number of depots in this airport byte size_x; ///< size of airport in x direction diff --git a/src/table/airport_defaults.h b/src/table/airport_defaults.h index 8207021ba..f5e727c5c 100644 --- a/src/table/airport_defaults.h +++ b/src/table/airport_defaults.h @@ -377,16 +377,18 @@ static AirportTileTable *_tile_table_helistation[] = { #undef MKEND /** General AirportSpec definition. */ -#define AS_GENERIC(fsm, att, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, enabled) \ - {fsm, att, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, name, ttdpatch_type, class_id, enabled} +#define AS_GENERIC(fsm, att, att_len, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, enabled) \ + {fsm, att, att_len, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, name, ttdpatch_type, class_id, enabled} /** AirportSpec definition for airports without any depot. */ #define AS_ND(ap_name, size_x, size_y, min_year, max_year, catchment, noise, ttdpatch_type, class_id, name) \ - AS_GENERIC(&_airportfta_##ap_name, _tile_table_##ap_name, NULL, 0, size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, true) + AS_GENERIC(&_airportfta_##ap_name, _tile_table_##ap_name, lengthof(_tile_table_##ap_name), NULL, 0, \ + size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, true) /** AirportSpec definition for airports with at least one depot. */ #define AS(ap_name, size_x, size_y, min_year, max_year, catchment, noise, ttdpatch_type, class_id, name) \ - AS_GENERIC(&_airportfta_##ap_name, _tile_table_##ap_name, _airport_depots_##ap_name, lengthof(_airport_depots_##ap_name), size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, true) + AS_GENERIC(&_airportfta_##ap_name, _tile_table_##ap_name, lengthof(_tile_table_##ap_name), _airport_depots_##ap_name, lengthof(_airport_depots_##ap_name), \ + size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, true) /* The helidepot and helistation have ATP_TTDP_SMALL because they are at ground level */ extern const AirportSpec _origin_airport_specs[] = { @@ -399,7 +401,7 @@ extern const AirportSpec _origin_airport_specs[] = { AS(helidepot, 2, 2, 1976, MAX_YEAR, 4, 2, ATP_TTDP_SMALL, APC_HELIPORT, STR_AIRPORT_HELIDEPOT), AS(intercontinental, 9, 11, 2002, MAX_YEAR, 10, 25, ATP_TTDP_LARGE, APC_HUB, STR_AIRPORT_INTERCONTINENTAL), AS(helistation, 4, 2, 1980, MAX_YEAR, 4, 3, ATP_TTDP_SMALL, APC_HELIPORT, STR_AIRPORT_HELISTATION), - AS_GENERIC(&_airportfta_oilrig, NULL, NULL, 0, 1, 1, 0, 4, 0, 0, ATP_TTDP_OILRIG, APC_HELIPORT, STR_NULL, false), + AS_GENERIC(&_airportfta_oilrig, NULL, 0, NULL, 0, 1, 1, 0, 4, 0, 0, ATP_TTDP_OILRIG, APC_HELIPORT, STR_NULL, false), }; assert_compile(NUM_AIRPORTS == lengthof(_origin_airport_specs)); |