(svn r27157) -Fix: Mark bridge middle tiles dirty when building/removing/changing bridges.

This commit is contained in:
frosch
2015-02-22 14:01:24 +00:00
parent 9a601a1029
commit bd3a8bf9e4
6 changed files with 48 additions and 24 deletions

View File

@@ -1688,13 +1688,11 @@ CommandCost CmdConvertRail(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3
YapfNotifyTrackLayoutChange(tile, track);
YapfNotifyTrackLayoutChange(endtile, track);
MarkTileDirtyByTile(tile);
MarkTileDirtyByTile(endtile);
if (IsBridge(tile)) {
TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile));
TileIndex t = tile + delta;
for (; t != endtile; t += delta) MarkTileDirtyByTile(t); // TODO encapsulate this into a function
MarkBridgeDirty(tile);
} else {
MarkTileDirtyByTile(tile);
MarkTileDirtyByTile(endtile);
}
}