mirror of https://github.com/OpenTTD/OpenTTD
(svn r27312) -Fix-ish [FS#6317]: Preserve town ownership of bridges when removing road from a road+tram bridge. (marcole)
parent
62bc57db77
commit
eb909f2785
|
@ -237,10 +237,10 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
|
||||||
SetRoadTypes(tile, GetRoadTypes(tile) & ~RoadTypeToRoadTypes(rt));
|
SetRoadTypes(tile, GetRoadTypes(tile) & ~RoadTypeToRoadTypes(rt));
|
||||||
|
|
||||||
/* If the owner of the bridge sells all its road, also move the ownership
|
/* If the owner of the bridge sells all its road, also move the ownership
|
||||||
* to the owner of the other roadtype. */
|
* to the owner of the other roadtype, unless the bridge owner is a town. */
|
||||||
RoadType other_rt = (rt == ROADTYPE_ROAD) ? ROADTYPE_TRAM : ROADTYPE_ROAD;
|
RoadType other_rt = (rt == ROADTYPE_ROAD) ? ROADTYPE_TRAM : ROADTYPE_ROAD;
|
||||||
Owner other_owner = GetRoadOwner(tile, other_rt);
|
Owner other_owner = GetRoadOwner(tile, other_rt);
|
||||||
if (other_owner != GetTileOwner(tile)) {
|
if (!IsTileOwner(tile, other_owner) && !IsTileOwner(tile, OWNER_TOWN)) {
|
||||||
SetTileOwner(tile, other_owner);
|
SetTileOwner(tile, other_owner);
|
||||||
SetTileOwner(other_end, other_owner);
|
SetTileOwner(other_end, other_owner);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue