(svn r3898) Add functions to find a bridge end starting at a middle tile
This commit is contained in:
20
bridge_map.c
20
bridge_map.c
@@ -5,6 +5,26 @@
|
||||
#include "bridge_map.h"
|
||||
|
||||
|
||||
TileIndex GetBridgeEnd(TileIndex tile, DiagDirection dir)
|
||||
{
|
||||
TileIndexDiff delta = TileOffsByDir(dir);
|
||||
|
||||
assert(DiagDirToAxis(dir) == GetBridgeAxis(tile));
|
||||
|
||||
do {
|
||||
tile += delta;
|
||||
} while (!IsBridgeRamp(tile));
|
||||
|
||||
return tile;
|
||||
}
|
||||
|
||||
|
||||
TileIndex GetSouthernBridgeEnd(TileIndex t)
|
||||
{
|
||||
return GetBridgeEnd(t, AxisToDiagDir(GetBridgeAxis(t)));
|
||||
}
|
||||
|
||||
|
||||
TileIndex GetOtherBridgeEnd(TileIndex tile)
|
||||
{
|
||||
TileIndexDiff delta = TileOffsByDir(GetBridgeRampDirection(tile));
|
||||
|
||||
Reference in New Issue
Block a user