public void DeleteFrame(SnookerFrameScore frame) { int frameNumber = FrameScores.IndexOf(frame) + 1; if (frameNumber <= 0) { return; } // remove breaks List <SnookerBreak> breaksToDelete = this.GetBreaksForFrame(frameNumber); foreach (var b in breaksToDelete) { this.YourBreaks.Remove(b); this.OpponentBreaks.Remove(b); } foreach (var b in this.YourBreaks) { if (b.FrameNumber > frameNumber) { b.FrameNumber -= 1; } } foreach (var b in this.OpponentBreaks) { if (b.FrameNumber > frameNumber) { b.FrameNumber -= 1; } } // remove the frame FrameScores.Remove(frame); }
public void CalculateMatchScoreFromFrameScores() { if (HasFrameScores == true) { MatchScoreA = FrameScores.Where(i => i.A >= i.B).Count(); MatchScoreB = FrameScores.Where(i => i.A < i.B).Count(); } }