Пример #1
0
        public void SetStatuses(IStage <Match> stage)
        {
            foreach (var game in stage.Tours.SelectMany(tour => tour.Games))
            {
                UnitPairWithResults.GetPair(game.Players.Item1, game.Players.Item2)
                .SetResult(game.Result);
            }

            foreach (var winner in UnitPairWithResults.Pairs.Select(pair => pair.GetWinnerThenLoser().Item1))
            {
                winner.AddStatus(stage, new PairWinner());
            }
        }
Пример #2
0
            public static UnitPairWithResults GetPair(IGameUnit team1, IGameUnit team2)
            {
                var result = Pairs.SingleOrDefault(x => (x._team1.Key == team1 && x._team2.Key == team2) ||
                                                   (x._team1.Key == team2 && x._team1.Key == team2));

                if (result != null)
                {
                    return(result);
                }

                result = new UnitPairWithResults(team1, team2);
                Pairs.Add(result);
                return(result);
            }