Removing road from combined road/tram tile should clear one way state

pull/642/head
Jonathan G Rennison 5 months ago
parent 36776248b9
commit 6eaa3cf7f8

@ -741,6 +741,9 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
if (flags & DC_EXEC) {
/* A full diagonal road tile has two road bits. */
UpdateCompanyRoadInfrastructure(existing_rt, GetRoadOwner(tile, rtt), -2);
if (rtt == RTT_ROAD) {
SetDriveThroughStopDisallowedRoadDirections(tile, DRD_NONE);
}
SetRoadType(tile, rtt, INVALID_ROADTYPE);
MarkTileDirtyByTile(tile);
NotifyRoadLayoutChanged(false);
@ -814,6 +817,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
const Town *town = CalcClosestTownFromTile(tile);
SetTownIndex(tile, town == nullptr ? INVALID_TOWN : town->index);
}
if (rtt == RTT_ROAD) SetDisallowedRoadDirections(tile, DRD_NONE);
SetRoadBits(tile, ROAD_NONE, rtt);
SetRoadType(tile, rtt, INVALID_ROADTYPE);
MarkTileDirtyByTile(tile);

Loading…
Cancel
Save