src/airport.h
branchNewGRF_ports
changeset 6818 8c977ca780fe
parent 6805 2b3ed8e47662
child 6837 c39d50afbaf0
equal deleted inserted replaced
6817:ef4c1d63b69f 6818:8c977ca780fe
     5 #ifndef AIRPORT_H
     5 #ifndef AIRPORT_H
     6 #define AIRPORT_H
     6 #define AIRPORT_H
     7 
     7 
     8 #include "direction.h"
     8 #include "direction.h"
     9 #include "fsmblockmap.h"
     9 #include "fsmblockmap.h"
       
    10 #include <list>
    10 
    11 
    11 enum {MAX_TERMINALS =  36};
    12 enum {MAX_TERMINALS =  36};
    12 enum {MAX_HELIPADS  =  24};
    13 enum {MAX_HELIPADS  =  24};
    13 enum {MAX_ELEMENTS  = 255};
    14 enum {MAX_ELEMENTS  = 255};
    14 enum {MAX_HEADINGS  =  30};
    15 enum {MAX_HEADINGS  =  30};
   103 	byte special;            // used as extra data for special orders 7B, 7C, 7D, 7E
   104 	byte special;            // used as extra data for special orders 7B, 7C, 7D, 7E
   104 };
   105 };
   105 
   106 
   106 void InitializeAirports();
   107 void InitializeAirports();
   107 void UnInitializeAirports();
   108 void UnInitializeAirports();
   108 const AirportFTAClass *GetAirport(const byte airport_type);
       
   109 
   109 
   110 /** Get buildable airport bitmask.
   110 /**
   111  * @return get all buildable airports at this given time, bitmasked.
   111  * Get a list of currently available airports.
   112  * Bit 0 means the small airport is buildable, etc.
   112  * @return the list with available airports.
   113  * @todo set availability of airports by year, instead of airplane
   113  * @note return is "class index" << 8 | "index within class"
   114  */
   114  */
   115 uint32 GetValidAirports();
   115 std::list<uint16> GetAvailableAirports();
   116 
   116 
   117 #endif /* AIRPORT_H */
   117 #endif /* AIRPORT_H */