static void SetBuildingsOnPavement(CityBlock cityBlock) { for (int x = 0; x < cityBlock.size.x; x++) { for (int y = 0; y < cityBlock.size.y; y++) { var pavement = cityBlock.GetPavementTile(x, y); if (pavement == PavementPiece.CORNER_NW) { cityBlock.SetBuildingTile(x, y, BuildingPiece.CORNER_NW); } else if (pavement == PavementPiece.CORNER_SW) { cityBlock.SetBuildingTile(x, y, BuildingPiece.CORNER_SW); } else if (pavement == PavementPiece.CORNER_SE) { cityBlock.SetBuildingTile(x, y, BuildingPiece.CORNER_SE); } else if (pavement == PavementPiece.CORNER_NE) { cityBlock.SetBuildingTile(x, y, BuildingPiece.CORNER_NE); } else if (pavement == PavementPiece.SIDE_S) { cityBlock.SetBuildingTile(x, y, BuildingPiece.SIDE_S); } else if (pavement == PavementPiece.SIDE_N) { cityBlock.SetBuildingTile(x, y, BuildingPiece.SIDE_N); } else if (pavement == PavementPiece.SIDE_W) { cityBlock.SetBuildingTile(x, y, BuildingPiece.SIDE_W); } else if (pavement == PavementPiece.SIDE_E) { cityBlock.SetBuildingTile(x, y, BuildingPiece.SIDE_E); } } } }
static void SetBorder(CityBlock cityBlock) { int x, y; for (x = 1; x < cityBlock.size.x - 1; x++) { cityBlock.SetPavementTile(x, 0, PavementPiece.SIDE_S); cityBlock.SetPavementTile(x, cityBlock.size.y - 1, PavementPiece.SIDE_N); cityBlock.SetBuildingTile(x, 0, BuildingPiece.SIDE_S); cityBlock.SetBuildingTile(x, cityBlock.size.y - 1, BuildingPiece.SIDE_N); } for (y = 1; y < cityBlock.size.y - 1; y++) { cityBlock.SetPavementTile(0, y, PavementPiece.SIDE_W); cityBlock.SetPavementTile(cityBlock.size.x - 1, y, PavementPiece.SIDE_E); cityBlock.SetBuildingTile(0, y, BuildingPiece.SIDE_W); cityBlock.SetBuildingTile(cityBlock.size.x - 1, y, BuildingPiece.SIDE_E); } // set city block border corners cityBlock.SetPavementTile(0, 0, PavementPiece.CORNER_NE); cityBlock.SetPavementTile(cityBlock.size.x - 1, 0, PavementPiece.CORNER_NW); cityBlock.SetPavementTile(0, cityBlock.size.y - 1, PavementPiece.CORNER_SE); cityBlock.SetPavementTile(cityBlock.size.x - 1, cityBlock.size.y - 1, PavementPiece.CORNER_SW); // set city block border corner buildings cityBlock.SetBuildingTile(0, 0, BuildingPiece.CORNER_INNER_SW); cityBlock.SetBuildingTile(cityBlock.size.x - 1, 0, BuildingPiece.CORNER_INNER_SE); cityBlock.SetBuildingTile(0, cityBlock.size.y - 1, BuildingPiece.CORNER_INNER_NW); cityBlock.SetBuildingTile(cityBlock.size.x - 1, cityBlock.size.y - 1, BuildingPiece.CORNER_INNER_NE); }