private bool TestForEnemy(GridElement startElement) { setup.resetGridForEnemySearch(); bool containsEnemy = false; Queue <GridElement> queue = new Queue <GridElement>(); queue.Enqueue(startElement); while (queue.Count != 0) { GridElement element = queue.Dequeue(); if (element.findEnemy(walls)) { if (element.ContainsEnemy(enemy)) { containsEnemy = true; break; } foreach (GridElement neighbour in element.getNeighbours()) { queue.Enqueue(neighbour); } } } return(containsEnemy); }