/// <summary> /// The main tournament timer. /// Setup the brackets and start the timer /// </summary> public TournamentTimer(Tournament tournament) { Random rand = new Random(); Manager.FilterInactiveTeams(tournament); m_CurrentRound = 0; m_CurrentMatch = 0; m_DelayStart = TimeSpan.FromSeconds(30.0); m_Contestants = new List <Teams>(); m_Matches = new List <Match>(); m_Arenas = new List <ArenaControl>(); m_Tournament = tournament; m_Bracket = new BuildBracket(); m_TournamentStarted = false; m_Contestants.AddRange(tournament.Teams); ShuffleTeams(); switch (m_Tournament.Type) { case TournamentType.RoundRobin: { break; } case TournamentType.SingleElimination: { m_Bracket.SingleElimination(m_Contestants); break; } case TournamentType.DoubleElimination: { break; } case TournamentType.Hybrid: { break; } } string arenaset = (m_Tournament.ArenaSets != null && m_Tournament.ArenaSets.Count > 0)? m_Tournament.ArenaSets[rand.Next(m_Tournament.ArenaSets.Count)] : ""; m_Arenas = ArenaControl.GetArenaSet(m_Tournament.TeamSize, arenaset); if (!(m_Arenas.Count > 0)) { m_Arenas = ArenaControl.RandomArenaSet(m_Tournament.TeamSize); } }
/// <summary> /// The main tournament timer. /// Setup the brackets and start the timer /// </summary> public TournamentTimer(Tournament tournament) { Random rand = new Random(); Manager.FilterInactiveTeams(tournament); m_CurrentRound = 0; m_CurrentMatch = 0; m_DelayStart = TimeSpan.FromSeconds(30.0); m_Contestants = new List<Teams>(); m_Matches = new List<Match>(); m_Arenas = new List<ArenaControl>(); m_Tournament = tournament; m_Bracket = new BuildBracket(); m_TournamentStarted = false; m_Contestants.AddRange(tournament.Teams); ShuffleTeams(); switch (m_Tournament.Type) { case TournamentType.RoundRobin: { break; } case TournamentType.SingleElimination: { m_Bracket.SingleElimination(m_Contestants); break; } case TournamentType.DoubleElimination: { break; } case TournamentType.Hybrid: { break; } } string arenaset = (m_Tournament.ArenaSets != null && m_Tournament.ArenaSets.Count > 0)? m_Tournament.ArenaSets[rand.Next(m_Tournament.ArenaSets.Count)] : ""; m_Arenas = ArenaControl.GetArenaSet(m_Tournament.TeamSize, arenaset); if (!(m_Arenas.Count > 0)) m_Arenas = ArenaControl.RandomArenaSet(m_Tournament.TeamSize); }