diff options
author | tron <tron@openttd.org> | 2007-02-04 13:46:21 +0000 |
---|---|---|
committer | tron <tron@openttd.org> | 2007-02-04 13:46:21 +0000 |
commit | 3690fbcc6e9db3cbc68ee2b6f709e05e749eed76 (patch) | |
tree | aa513ade38eab3747650db2d4cf98178d4a68930 | |
parent | 3d59cf057356836c56ab782de7253f7612982b04 (diff) | |
download | openttd-3690fbcc6e9db3cbc68ee2b6f709e05e749eed76.tar.xz |
(svn r8582) -Fix
Reorder the attributes of some structs to reduce their size
-rw-r--r-- | src/airport.cpp | 4 | ||||
-rw-r--r-- | src/airport.h | 15 | ||||
-rw-r--r-- | src/order.h | 4 |
3 files changed, 12 insertions, 11 deletions
diff --git a/src/airport.cpp b/src/airport.cpp index cee9257fb..2d118e1cf 100644 --- a/src/airport.cpp +++ b/src/airport.cpp @@ -190,12 +190,12 @@ AirportFTAClass::AirportFTAClass( uint size_y_ ) : moving_data(moving_data_), - nofelements(AirportGetNofElements(apFA)), terminals(terminals_), helipads(helipads_), - entry_point(entry_point_), airport_depots(depots_), nof_depots(nof_depots_), + nofelements(AirportGetNofElements(apFA)), + entry_point(entry_point_), size_x(size_x_), size_y(size_y_) { diff --git a/src/airport.h b/src/airport.h index 8b0b89757..1b515da5c 100644 --- a/src/airport.h +++ b/src/airport.h @@ -123,7 +123,8 @@ enum { }; typedef struct AirportMovingData { - int x,y; + int16 x; + int16 y; byte flag; DirectionByte direction; } AirportMovingData; @@ -155,25 +156,25 @@ typedef struct AirportFTAClass { } const AirportMovingData *moving_data; - byte nofelements; // number of positions the airport consists of + struct AirportFTA *layout; // state machine for airport const byte *terminals; const byte *helipads; - byte entry_point; // when an airplane arrives at this airport, enter it at position entry_point - AcceptPlanesByte acc_planes; // accept airplanes or helicopters or both const TileIndexDiffC *airport_depots; // gives the position of the depots on the airports byte nof_depots; // number of depots this airport has - struct AirportFTA *layout; // state machine for airport + byte nofelements; // number of positions the airport consists of + byte entry_point; // when an airplane arrives at this airport, enter it at position entry_point + AcceptPlanesByte acc_planes; // accept airplanes or helicopters or both byte size_x; byte size_y; } AirportFTAClass; // internal structure used in openttd - Finite sTate mAchine --> FTA typedef struct AirportFTA { + struct AirportFTA *next; // possible extra movement choices from this position + uint32 block; // 32 bit blocks (st->airport_flags), should be enough for the most complex airports byte position; // the position that an airplane is at byte next_position; // next position from this position - uint32 block; // 32 bit blocks (st->airport_flags), should be enough for the most complex airports byte heading; // heading (current orders), guiding an airplane to its target on an airport - struct AirportFTA *next; // possible extra movement choices from this position } AirportFTA; void InitializeAirports(void); diff --git a/src/order.h b/src/order.h index 7d14d6c15..64d39d586 100644 --- a/src/order.h +++ b/src/order.h @@ -89,12 +89,12 @@ enum { * - REF_SHEDULE (all REFs are currently limited to 16 bits!!) */ typedef struct Order { + struct Order *next; ///< Pointer to next order. If NULL, end of list + OrderTypeByte type; uint8 flags; DestinationID dest; ///< The destionation of the order. - struct Order *next; ///< Pointer to next order. If NULL, end of list - OrderID index; ///< Index of the order, is not saved or anything, just for reference CargoID refit_cargo; // Refit CargoID |