diff options
author | frosch <frosch@openttd.org> | 2015-02-22 14:01:24 +0000 |
---|---|---|
committer | frosch <frosch@openttd.org> | 2015-02-22 14:01:24 +0000 |
commit | e8e49e5ddabf6bdc6c6b6a77a1d2ead377c27444 (patch) | |
tree | a6cd6584172b1917357ac22feb2779fd3e18e6f4 /src/viewport.cpp | |
parent | ff1f465191e9ea1651ad18070f53f8274c8c2f74 (diff) | |
download | openttd-e8e49e5ddabf6bdc6c6b6a77a1d2ead377c27444.tar.xz |
(svn r27157) -Fix: Mark bridge middle tiles dirty when building/removing/changing bridges.
Diffstat (limited to 'src/viewport.cpp')
-rw-r--r-- | src/viewport.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/viewport.cpp b/src/viewport.cpp index 301b5e799..796368114 100644 --- a/src/viewport.cpp +++ b/src/viewport.cpp @@ -2232,14 +2232,15 @@ void ConstrainAllViewportsZoom() /** * Mark a tile given by its index dirty for repaint. * @param tile The tile to mark dirty. + * @param bridge_level_offset Height of bridge on tile to also mark dirty. (Height level relative to north corner.) * @ingroup dirty */ -void MarkTileDirtyByTile(TileIndex tile) +void MarkTileDirtyByTile(TileIndex tile, int bridge_level_offset) { Point pt = RemapCoords(TileX(tile) * TILE_SIZE, TileY(tile) * TILE_SIZE, TilePixelHeight(tile)); MarkAllViewportsDirty( pt.x - MAX_TILE_EXTENT_LEFT, - pt.y - MAX_TILE_EXTENT_TOP, + pt.y - MAX_TILE_EXTENT_TOP - ZOOM_LVL_BASE * TILE_HEIGHT * bridge_level_offset, pt.x + MAX_TILE_EXTENT_RIGHT, pt.y + MAX_TILE_EXTENT_BOTTOM); } |