public void GenerateObjects(Labyrinth labyrinth, Obstacle obstacle, FreeSpace freeSpace) { for (int i = 0; i < labyrinth.Columns; i++) { for (int j = 0; j < labyrinth.Rows; j++) { int randomNumber = this.randomGenerator.Next(2); IGameObject currentObject; if (randomNumber == 1) { currentObject = (Obstacle)obstacle.Clone(); } else { currentObject = (FreeSpace)freeSpace.Clone(); } labyrinth[i, j] = currentObject; } } }