|
|
|
@ -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);
|
|
|
|
|