src/openttd.h
changeset 8213 7bdd7593eb9b
parent 8140 0d0d8c94f84b
child 8254 1496654ca5e7
equal deleted inserted replaced
8212:cf3fce5c7464 8213:7bdd7593eb9b
    14 // Forward declarations of structs.
    14 // Forward declarations of structs.
    15 struct Depot;
    15 struct Depot;
    16 struct Waypoint;
    16 struct Waypoint;
    17 struct Station;
    17 struct Station;
    18 struct ViewPort;
    18 struct ViewPort;
    19 struct Town;
       
    20 struct NewsItem;
    19 struct NewsItem;
    21 struct Industry;
       
    22 struct DrawPixelInfo;
    20 struct DrawPixelInfo;
    23 struct Group;
    21 struct Group;
    24 typedef byte VehicleOrderID;  ///< The index of an order within its current vehicle (not pool related)
    22 typedef byte VehicleOrderID;  ///< The index of an order within its current vehicle (not pool related)
    25 typedef byte LandscapeID;
    23 typedef byte LandscapeID;
    26 typedef uint16 EngineID;
    24 typedef uint16 EngineID;
    30 
    28 
    31 /* IDs used in Pools */
    29 /* IDs used in Pools */
    32 typedef uint16 StationID;
    30 typedef uint16 StationID;
    33 static const StationID INVALID_STATION = 0xFFFF;
    31 static const StationID INVALID_STATION = 0xFFFF;
    34 typedef uint16 RoadStopID;
    32 typedef uint16 RoadStopID;
    35 typedef uint16 TownID;
       
    36 typedef uint16 IndustryID;
       
    37 typedef uint16 DepotID;
    33 typedef uint16 DepotID;
    38 typedef uint16 WaypointID;
    34 typedef uint16 WaypointID;
    39 typedef uint16 OrderID;
    35 typedef uint16 OrderID;
    40 typedef uint16 SignID;
    36 typedef uint16 SignID;
    41 typedef uint16 GroupID;
    37 typedef uint16 GroupID;
   150 	LT_TROPIC     = 2,
   146 	LT_TROPIC     = 2,
   151 	LT_TOYLAND    = 3,
   147 	LT_TOYLAND    = 3,
   152 
   148 
   153 	NUM_LANDSCAPE = 4,
   149 	NUM_LANDSCAPE = 4,
   154 };
   150 };
   155 
       
   156 /**
       
   157  * Town Layouts
       
   158  */
       
   159 enum TownLayout {
       
   160 	TL_NO_ROADS     = 0, ///< Build no more roads, but still build houses
       
   161 	TL_ORIGINAL,         ///< Original algorithm (min. 1 distance between roads)
       
   162 	TL_BETTER_ROADS,     ///< Extended original algorithm (min. 2 distance between roads)
       
   163 	TL_2X2_GRID,         ///< Geometric 2x2 grid algorithm
       
   164 	TL_3X3_GRID,         ///< Geometric 3x3 grid algorithm
       
   165 
       
   166 	NUM_TLS,             ///< Number of town layouts
       
   167 };
       
   168 
       
   169 /* It needs to be 8bits, because we save and load it as such */
       
   170 /** Define basic enum properties */
       
   171 template <> struct EnumPropsT<TownLayout> : MakeEnumPropsT<TownLayout, byte, TL_NO_ROADS, NUM_TLS, NUM_TLS> {};
       
   172 typedef TinyEnumT<TownLayout> TownLayoutByte; //typedefing-enumification of TownLayout
       
   173 
   151 
   174 #define GAME_DIFFICULTY_NUM 18
   152 #define GAME_DIFFICULTY_NUM 18
   175 
   153 
   176 /** Specific type for Game Difficulty to ease changing the type */
   154 /** Specific type for Game Difficulty to ease changing the type */
   177 typedef uint16 GDType;
   155 typedef uint16 GDType;