IEnumerator ClearRoom(int roomNumber, bool plusCorridors) { Transform roomTransform = gridPoints[roomNumber].transform; RoomGenerator roomGen = roomTransform.GetComponent <RoomGenerator>(); roomGen.ClearAdjacentRoomBools(); roomGen.ClearRoomConnections(); roomGen.ClearDoorways(); roomTransform.GetChild(0).GetComponent <RoomScript>().PrepareForDeletion(); Destroy(roomTransform.GetChild(0).gameObject); //roomTransform.GetChild(0).gameObject.SetActive(false); if (plusCorridors) { while (roomTransform.childCount > 0) { Destroy(roomTransform.GetChild(0).gameObject); yield return(null); } } }