Пример #1
0
        public static ITournamentApplication GetNewTournament(ITournamentType type)
        {
            ITournamentApplication newTournament;

            switch (type?.TournamentTypeId)
            {
            case 1:
                newTournament = NewSingleEliminationTournament();
                break;

            case 2:
                newTournament = NewSwissTournament();
                break;

            default:
                newTournament = null;
                break;
            }

            if (newTournament != null)
            {
                newTournament.TournamentTypeId = type.TournamentTypeId;
            }

            return(newTournament);
        }
Пример #2
0
        public Tournament Create(Raiting[] raitings, ITournamentType type)
        {
            tourType = type;
            var Tournament = new Tournament(raitings);

            return(Tournament);
        }
Пример #3
0
 public bool validateTournamentType(ITournamentType type)
 {
     if (type == null)
     {
         return(false);
     }
     return(true);
 }
Пример #4
0
 public bool validateParticipantCount(int count, ITournamentType tournamentType)
 {
     if (count <= 1)
     {
         return(false);
     }
     if (!isEven(count))
     {
         return(false);
     }
     if (tournamentType.TournamentTypeId == 1 && !isPowerOfTwo(count))
     {
         return(false);
     }
     return(true);
 }
Пример #5
0
        public ITournament createTournament(
            string tournamentName,
            ITournamentType tournamentType,
            int userId,
            double entryFee,
            double totalPrizePool,
            List <ITournamentEntry> participants,
            List <ITeam> teams,
            List <ITournamentPrize> prizesInTournament
            )
        {
            var tournament = TournamentTypeHelper.GetNewTournament(tournamentType);

            tournament.TournamentName    = tournamentName;
            tournament.EntryFee          = entryFee;
            tournament.TotalPrizePool    = totalPrizePool;
            tournament.UserId            = userId;
            tournament.TournamentEntries = participants;
            tournament.Teams             = teams;
            tournament.TournamentPrizes  = prizesInTournament;

            return(tournament.BuildTournament());
        }
 /// <summary>
 /// Создать новый турнир <see cref="Tournament"/>
 /// </summary>
 /// <returns>Турнир</returns>
 public Tournament Create(Rating[] ratings, ITournamentType type)
 {
     tourType = type;
     return(new Tournament(ratings));
 }