Changeset - r17936:4c930bd3805b
[Not reviewed]
master
0 1 0
frosch - 13 years ago 2011-08-16 21:25:33
frosch@openttd.org
(svn r22755) -Fix [FS#4727]: When marking tile selections dirty, use the height information of the corners instead of the surface slope. This is more accurate when the foundation is kind of undefined.
1 file changed with 7 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/viewport.cpp
Show inline comments
 
@@ -1723,8 +1723,13 @@ static void SetSelectionTilesDirty()
 
		int bot_y = top_y;
 

	
 
		do {
 
			Point top = RemapCoords2(top_x, top_y); // topmost dirty point
 
			Point bot = RemapCoords2(bot_x + TILE_SIZE - 1, bot_y + TILE_SIZE - 1); // bottommost point
 
			/* topmost dirty point */
 
			TileIndex top_tile = TileVirtXY(top_x, top_y);
 
			Point top = RemapCoords(top_x, top_y, GetTileMaxZ(top_tile));
 

	
 
			/* bottommost point */
 
			TileIndex bottom_tile = TileVirtXY(bot_x, bot_y);
 
			Point bot = RemapCoords(bot_x + TILE_SIZE, bot_y + TILE_SIZE, GetTileZ(bottom_tile)); // bottommost point
 

	
 
			/* the 'x' coordinate of 'top' and 'bot' is the same (and always in the same distance from tile middle),
 
			 * tile height/slope affects only the 'y' on-screen coordinate! */
0 comments (0 inline, 0 general)