public void TryGenerateAreaOnImpassable(IntVec3 c) { if (!c.Roofed(this.map) && c.Impassable(this.map) && RoofCollapseUtility.WithinRangeOfRoofHolder(c, this.map, false)) { bool flag = false; for (int i = 0; i < 9; i++) { IntVec3 loc = c + GenRadial.RadialPattern[i]; Room room = loc.GetRoom(this.map, RegionType.Set_Passable); if (room != null && !room.TouchesMapEdge) { flag = true; break; } } if (flag) { this.map.areaManager.BuildRoof[c] = true; MoteMaker.PlaceTempRoof(c, this.map); } } }
public void TryGenerateAreaOnImpassable(IntVec3 c) { if (c.Roofed(map) || !c.Impassable(map) || !RoofCollapseUtility.WithinRangeOfRoofHolder(c, map)) { return; } bool flag = false; for (int i = 0; i < 9; i++) { Room room = (c + GenRadial.RadialPattern[i]).GetRoom(map); if (room != null && !room.TouchesMapEdge) { flag = true; break; } } if (flag) { map.areaManager.BuildRoof[c] = true; MoteMaker.PlaceTempRoof(c, map); } }