mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 14:27:16 +00:00
(svn r8074) -Fix (FS#537, r7555, r5749): revert r7555 because it was really wrong and fix the off-by-one error due to truncation that was supposedly fixed by r7555.
This commit is contained in:
parent
c3b56e0b3a
commit
5afd50017d
@ -304,11 +304,11 @@ static void GrayscaleToMapHeights(uint img_width, uint img_height, byte *map)
|
||||
if ((img_width * num_div) / img_height > ((width * num_div) / height)) {
|
||||
/* Image is wider than map - center vertically */
|
||||
img_scale = (width * num_div) / img_width;
|
||||
row_pad = (height - ((img_height * img_scale) / num_div)) / 2;
|
||||
row_pad = (1 + height - ((img_height * img_scale) / num_div)) / 2;
|
||||
} else {
|
||||
/* Image is taller than map - center horizontally */
|
||||
img_scale = (height * num_div) / img_height;
|
||||
col_pad = (width - ((img_width * img_scale) / num_div)) / 2;
|
||||
col_pad = (1 + width - ((img_width * img_scale) / num_div)) / 2;
|
||||
}
|
||||
|
||||
/* Form the landscape */
|
||||
@ -322,8 +322,8 @@ static void GrayscaleToMapHeights(uint img_width, uint img_height, byte *map)
|
||||
|
||||
/* Check if current tile is within the 1-pixel map edge or padding regions */
|
||||
if ((DistanceFromEdge(tile) <= 1) ||
|
||||
(row < row_pad) || (row >= (img_height + row_pad)) ||
|
||||
(col < col_pad) || (col >= (img_width + col_pad))) {
|
||||
(row < row_pad) || (row >= (height - row_pad - 1)) ||
|
||||
(col < col_pad) || (col >= (width - col_pad - 1))) {
|
||||
SetTileHeight(tile, 0);
|
||||
} else {
|
||||
/* Use nearest neighbor resizing to scale map data.
|
||||
|
Loading…
Reference in New Issue
Block a user