public static void SpawnInAnEmptyPosition(this ISpawnable itemToSpawn, Cell[,] maze) { IIntersectable intersectable = (IIntersectable)itemToSpawn; do { itemToSpawn.SetPosition( rng.Next(2 * Tile.Size, (maze.GetLength(1) - 1) * Tile.Size), rng.Next(2 * Tile.Size, (maze.GetLength(0) - 1) * Tile.Size)); } while (intersectable.AabbMapIntersectionTest(maze)); }