Fix removal of road waypoints during bankruptcy

pull/364/head
Jonathan G Rennison 2 years ago
parent df7b25cfdc
commit 786f80e878

@ -4890,7 +4890,21 @@ static void ChangeTileOwner_Station(TileIndex tile, Owner old_owner, Owner new_o
} else {
if (IsDriveThroughStopTile(tile)) {
/* Remove the drive-through road stop */
DoCommand(tile, 1 | 1 << 8, (GetStationType(tile) == STATION_TRUCK) ? ROADSTOP_TRUCK : ROADSTOP_BUS, DC_EXEC | DC_BANKRUPT, CMD_REMOVE_ROAD_STOP);
uint p2;
switch (GetStationType(tile)) {
case STATION_BUS:
p2 = ROADSTOP_BUS;
break;
case STATION_TRUCK:
p2 = ROADSTOP_TRUCK;
break;
case STATION_ROADWAYPOINT:
p2 = (1 << 2);
break;
default:
NOT_REACHED();
}
DoCommand(tile, 1 | 1 << 8, p2, DC_EXEC | DC_BANKRUPT, CMD_REMOVE_ROAD_STOP);
assert_tile(IsTileType(tile, MP_ROAD), tile);
/* Change owner of tile and all roadtypes */
ChangeTileOwner(tile, old_owner, new_owner);

Loading…
Cancel
Save