//RoomGroup public static WaterRoom GetRoom(this Thing thing, RegionType allowedRegionTypes = RegionType.Set_Passable) { if (!thing.Spawned) { return(null); } return(WaterRegionAndRoomQuery.RoomAt(thing.Position, thing.Map, allowedRegionTypes)); }
public static WaterRoom RoomAtOrAdjacent(IntVec3 c, Map map, RegionType allowedRegionTypes = RegionType.Set_Passable) { WaterRoom room = WaterRegionAndRoomQuery.RoomAt(c, map, allowedRegionTypes); if (!(room is null)) { return(room); } for (int i = 0; i < 8; i++) { IntVec3 c2 = c + GenAdj.AdjacentCells[i]; room = WaterRegionAndRoomQuery.RoomAt(c2, map, allowedRegionTypes); if (!(room is null)) { return(room); } } return(room); }