public int FlyAway(ref UFOList ufoList, SoundEffectInstance flyAwaySong) { var flyingUfoesList = new UFOList(); foreach (var ufo in ufoList) { if ((((ufo.rectangle.X + ufo.rectangle.Width) < 0) || (ufo.rectangle.Y + ufo.rectangle.Height < 0)) && (ufo.state == UFOState.Fly)) { if (flyingUfoesList.Contains(ufo) == false) { flyingUfoesList.Add(ufo); flyAwaySong.Play(); } } } int flyingufoes = flyingUfoesList.Count; foreach (var fly in flyingUfoesList) { ufoList.Remove(fly); } return flyingufoes; }