@@ -143,12 +143,17 @@ static inline Station *GetStation(Statio
*/
static inline uint16 GetStationPoolSize(void)
{
return _station_pool.total_items;
}
static inline bool IsStationIndex(uint index)
return index < GetStationPoolSize();
#define FOR_ALL_STATIONS_FROM(st, start) for (st = GetStation(start); st != NULL; st = (st->index + 1 < GetStationPoolSize()) ? GetStation(st->index + 1) : NULL)
#define FOR_ALL_STATIONS(st) FOR_ALL_STATIONS_FROM(st, 0)
/* Stuff for ROADSTOPS */
@@ -289,13 +294,13 @@ static inline bool IsRoadStationTile(uin
return IsTileType(tile, MP_STATION) && IS_BYTE_INSIDE(_map5[tile], 0x43, 0x4B);
/**
* Check if a station really exists.
static inline bool IsValidStation(Station* station)
static inline bool IsValidStation(const Station* station)
return station->xy != 0; /* XXX: Replace by INVALID_TILE someday */
/* Get's the direction the station exit points towards. Ie, returns 0 for a
* station with the exit NE. */