Changeset - r24290:83660a9ca947
[Not reviewed]
master
0 1 0
Charles Pigott - 4 years ago 2020-06-27 14:30:22
charlespigott@googlemail.com
Change: Also make roadside trees match the tree transparency option
1 file changed with 7 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/road_cmd.cpp
Show inline comments
 
@@ -1474,14 +1474,15 @@ void DrawRoadCatenary(const TileInfo *ti
 
 * @param dx  the offset from the top of the BB of the tile
 
 * @param dy  the offset from the top of the BB of the tile
 
 * @param h   the height of the sprite to draw
 
 * @param transparent  whether the sprite should be transparent (used for roadside trees)
 
 */
 
static void DrawRoadDetail(SpriteID img, const TileInfo *ti, int dx, int dy, int h)
 
static void DrawRoadDetail(SpriteID img, const TileInfo *ti, int dx, int dy, int h, bool transparent)
 
{
 
	int x = ti->x | dx;
 
	int y = ti->y | dy;
 
	int z = ti->z;
 
	if (ti->tileh != SLOPE_FLAT) z = GetSlopePixelZ(x, y);
 
	AddSortableSpriteToDraw(img, PAL_NONE, x, y, 2, 2, h, z);
 
	AddSortableSpriteToDraw(img, PAL_NONE, x, y, 2, 2, h, z, transparent);
 
}
 

	
 
/**
 
@@ -1634,9 +1635,12 @@ static void DrawRoadBits(TileInfo *ti)
 
	/* If there are no road bits, return, as there is nothing left to do */
 
	if (HasAtMostOneBit(road)) return;
 

	
 
	if (roadside == ROADSIDE_TREES && IsInvisibilitySet(TO_TREES)) return;
 
	bool is_transparent = roadside == ROADSIDE_TREES && IsTransparencySet(TO_TREES);
 

	
 
	/* Draw extra details. */
 
	for (const DrawRoadTileStruct *drts = _road_display_table[roadside][road | tram]; drts->image != 0; drts++) {
 
		DrawRoadDetail(drts->image, ti, drts->subcoord_x, drts->subcoord_y, 0x10);
 
		DrawRoadDetail(drts->image, ti, drts->subcoord_x, drts->subcoord_y, 0x10, is_transparent);
 
	}
 
}
 

	
0 comments (0 inline, 0 general)