(svn r5063) -Codechange: Add a function to determine the length of a platform (request by KUDr)
This commit is contained in:
@@ -1255,6 +1255,28 @@ uint GetStationPlatforms(const Station *st, TileIndex tile)
|
||||
return len - 1;
|
||||
}
|
||||
|
||||
/** Determines the REMAINING length of a platform, starting at (and including)
|
||||
* the given tile.
|
||||
* @param tile the tile from which to start searching. Must be a railway station tile
|
||||
* @param dir The direction in which to search.
|
||||
* @return The platform length
|
||||
*/
|
||||
uint GetPlatformLength(TileIndex tile, DiagDirection dir)
|
||||
{
|
||||
TileIndex start_tile = tile;
|
||||
uint length = 0;
|
||||
assert(IsRailwayStationTile(tile));
|
||||
assert(dir < DIAGDIR_END);
|
||||
|
||||
do {
|
||||
length ++;
|
||||
tile += TileOffsByDir(dir);
|
||||
} while (IsCompatibleTrainStationTile(tile, start_tile));
|
||||
|
||||
return length;
|
||||
}
|
||||
|
||||
|
||||
static int32 RemoveRailroadStation(Station *st, TileIndex tile, uint32 flags)
|
||||
{
|
||||
int w,h;
|
||||
|
||||
Reference in New Issue
Block a user