private Room GetRandomChamber() { var availableChambers = Chambers.Where(c => GetOccupiedSideCount(c) < 4).ToList(); if (availableChambers.Count == 0) { return(null); } return(availableChambers[Random.Next(0, availableChambers.Count)]); }
private bool ChamberIntersects(Rectangle chamber) { return(Chambers.Where(i => GetChamberWithWalls(i).Intersects(chamber)).Any()); }