# HG changeset patch # User frosch # Date 2010-11-20 00:24:50 # Node ID 225fd831e23672a8dd1717d453b8992d0968301c # Parent 65025cbb2687c54983f0daaf7856a2cb5f4ba829 (svn r21262) -Fix (r18708)[FS#4246]: Custom station foundations using the 'simple foundations'-method did not draw any sprite for WSE-slopes when there are foundations on both neighboured tiles in the north. As there must be at least one sprite to provide the correct offset for the groundsprite draw the (empty) default foundation sprite in that case. diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -2649,6 +2649,13 @@ static void DrawTile_Station(TileInfo *t if (!HasFoundationNW(ti->tile, slope, z)) ClrBit(parts, 6); if (!HasFoundationNE(ti->tile, slope, z)) ClrBit(parts, 7); + if (parts == 0) { + /* We always have to draw at least one sprite to make sure there is a boundingbox and a sprite with the + * correct offset for the childsprites. + * So, draw the (completely empty) sprite of the default foundations. */ + goto draw_default_foundation; + } + StartSpriteCombine(); for (int i = 0; i < 8; i++) { if (HasBit(parts, i)) { @@ -2661,6 +2668,7 @@ static void DrawTile_Station(TileInfo *t OffsetGroundSprite(31, 1); ti->z += ApplyFoundationToSlope(FOUNDATION_LEVELED, &ti->tileh); } else { +draw_default_foundation: DrawFoundation(ti, FOUNDATION_LEVELED); } }