public ITournament BuildTournament() { TournamentEntries = TournamentBuilderHelper.GetSeededEntries(TournamentEntries); var teamQueue = TournamentBuilderHelper.GetTeamQueue(TournamentEntries); var roundCount = TournamentBuilderHelper.GetRoundCounts(TournamentEntries.Count, 2); Rounds = TournamentBuilderHelper.GetRounds(roundCount); ActiveRound = 1; foreach (var round in Rounds) { TournamentBuilderHelper.AddTeamsToPairings(teamQueue, this, round); } return(this); }
public ITournament AdvanceRound() { var activeRound = Rounds.Where(x => x.RoundNum == ActiveRound).First(); ReseedTournament(); TournamentEntries = TournamentEntries.OrderByDescending(x => x.Seed).ToList(); var teamQueue = TournamentBuilderHelper.GetTeamQueue(TournamentEntries); ActiveRound++; var nextRound = Rounds.Where(x => x.RoundNum == ActiveRound).First(); if (nextRound != null) { TournamentBuilderHelper.AddTeamsToPairings(teamQueue, this, nextRound); } return(this); }