mirror of https://github.com/OpenTTD/OpenTTD
(svn r17444) -Fix [FS#3173]: when building roads isn't allowed for town, then don't build the initial piece either
parent
130781102e
commit
1474be7ea7
|
@ -1315,17 +1315,19 @@ static bool GrowTown(Town *t)
|
||||||
|
|
||||||
/* No road available, try to build a random road block by
|
/* No road available, try to build a random road block by
|
||||||
* clearing some land and then building a road there. */
|
* clearing some land and then building a road there. */
|
||||||
tile = t->xy;
|
if (_settings_game.economy.allow_town_roads || _generating_world) {
|
||||||
for (ptr = _town_coord_mod; ptr != endof(_town_coord_mod); ++ptr) {
|
tile = t->xy;
|
||||||
/* Only work with plain land that not already has a house */
|
for (ptr = _town_coord_mod; ptr != endof(_town_coord_mod); ++ptr) {
|
||||||
if (!IsTileType(tile, MP_HOUSE) && GetTileSlope(tile, NULL) == SLOPE_FLAT) {
|
/* Only work with plain land that not already has a house */
|
||||||
if (CmdSucceeded(DoCommand(tile, 0, 0, DC_AUTO | DC_NO_WATER, CMD_LANDSCAPE_CLEAR))) {
|
if (!IsTileType(tile, MP_HOUSE) && GetTileSlope(tile, NULL) == SLOPE_FLAT) {
|
||||||
DoCommand(tile, GenRandomRoadBits(), t->index, DC_EXEC | DC_AUTO, CMD_BUILD_ROAD);
|
if (CmdSucceeded(DoCommand(tile, 0, 0, DC_AUTO | DC_NO_WATER, CMD_LANDSCAPE_CLEAR))) {
|
||||||
_current_company = old_company;
|
DoCommand(tile, GenRandomRoadBits(), t->index, DC_EXEC | DC_AUTO, CMD_BUILD_ROAD);
|
||||||
return true;
|
_current_company = old_company;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
tile = TILE_ADD(tile, ToTileIndexDiff(*ptr));
|
||||||
}
|
}
|
||||||
tile = TILE_ADD(tile, ToTileIndexDiff(*ptr));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_current_company = old_company;
|
_current_company = old_company;
|
||||||
|
|
Loading…
Reference in New Issue