Наследование: INotifyPropertyChanged
Пример #1
0
        public bool StartPlayoffs16(IEnumerable<Player> players)
        {
            this.ClearPlayoffs();

            StartRound = PlayoffRound.Final_16;

            topplayers = players.Where(p => p.Active == true).OrderBy(p => p.Place).ToList();

            if (topplayers.Count() < 32) return false;

            topplayers = topplayers.Take(32);

            Player player01 = topplayers.ElementAt(0);
            Player player02 = topplayers.ElementAt(1);
            Player player03 = topplayers.ElementAt(2);
            Player player04 = topplayers.ElementAt(3);
            Player player05 = topplayers.ElementAt(4);
            Player player06 = topplayers.ElementAt(5);
            Player player07 = topplayers.ElementAt(6);
            Player player08 = topplayers.ElementAt(7);
            Player player09 = topplayers.ElementAt(8);
            Player player10 = topplayers.ElementAt(9);
            Player player11 = topplayers.ElementAt(10);
            Player player12 = topplayers.ElementAt(11);
            Player player13 = topplayers.ElementAt(12);
            Player player14 = topplayers.ElementAt(13);
            Player player15 = topplayers.ElementAt(14);
            Player player16 = topplayers.ElementAt(15);
            Player player17 = topplayers.ElementAt(16);
            Player player18 = topplayers.ElementAt(17);
            Player player19 = topplayers.ElementAt(18);
            Player player20 = topplayers.ElementAt(19);
            Player player21 = topplayers.ElementAt(20);
            Player player22 = topplayers.ElementAt(21);
            Player player23 = topplayers.ElementAt(22);
            Player player24 = topplayers.ElementAt(23);
            Player player25 = topplayers.ElementAt(24);
            Player player26 = topplayers.ElementAt(25);
            Player player27 = topplayers.ElementAt(26);
            Player player28 = topplayers.ElementAt(27);
            Player player29 = topplayers.ElementAt(28);
            Player player30 = topplayers.ElementAt(29);
            Player player31 = topplayers.ElementAt(30);
            Player player32 = topplayers.ElementAt(31);

            Final_16_01 = new Game()
            {
                Player1Alias = player01.Alias,
                Player1Id = player01.Id,
                Player1RaceCorpo = player01.RaceCorpo,
                Player1RaceRunner = player01.RaceRunner,

                Player2Alias = player32.Alias,
                Player2Id = player32.Id,
                Player2RaceCorpo = player32.RaceCorpo,
                Player2RaceRunner = player32.RaceRunner,
            };

            Final_16_02 = new Game()
            {
                Player1Alias = player16.Alias,
                Player1Id = player16.Id,
                Player1RaceCorpo = player16.RaceCorpo,
                Player1RaceRunner = player16.RaceRunner,

                Player2Alias = player17.Alias,
                Player2Id = player17.Id,
                Player2RaceCorpo = player17.RaceCorpo,
                Player2RaceRunner = player17.RaceRunner,
            };

            Final_16_03 = new Game()
            {
                Player1Alias = player08.Alias,
                Player1Id = player08.Id,
                Player1RaceCorpo = player08.RaceCorpo,
                Player1RaceRunner = player08.RaceRunner,

                Player2Alias = player25.Alias,
                Player2Id = player25.Id,
                Player2RaceCorpo = player25.RaceCorpo,
                Player2RaceRunner = player25.RaceRunner,
            };

            Final_16_04 = new Game()
            {
                Player1Alias = player09.Alias,
                Player1Id = player09.Id,
                Player1RaceCorpo = player09.RaceCorpo,
                Player1RaceRunner = player09.RaceRunner,

                Player2Alias = player24.Alias,
                Player2Id = player24.Id,
                Player2RaceCorpo = player24.RaceCorpo,
                Player2RaceRunner = player24.RaceRunner,
            };

            Final_16_05 = new Game()
            {
                Player1Alias = player04.Alias,
                Player1Id = player04.Id,
                Player1RaceCorpo = player04.RaceCorpo,
                Player1RaceRunner = player04.RaceRunner,

                Player2Alias = player29.Alias,
                Player2Id = player29.Id,
                Player2RaceCorpo = player29.RaceCorpo,
                Player2RaceRunner = player29.RaceRunner,
            };

            Final_16_06 = new Game()
            {
                Player1Alias = player13.Alias,
                Player1Id = player13.Id,
                Player1RaceCorpo = player13.RaceCorpo,
                Player1RaceRunner = player13.RaceRunner,

                Player2Alias = player20.Alias,
                Player2Id = player20.Id,
                Player2RaceCorpo = player20.RaceCorpo,
                Player2RaceRunner = player20.RaceRunner,
            };

            Final_16_07 = new Game()
            {
                Player1Alias = player05.Alias,
                Player1Id = player05.Id,
                Player1RaceCorpo = player05.RaceCorpo,
                Player1RaceRunner = player05.RaceRunner,

                Player2Alias = player28.Alias,
                Player2Id = player28.Id,
                Player2RaceCorpo = player28.RaceCorpo,
                Player2RaceRunner = player28.RaceRunner,
            };

            Final_16_08 = new Game()
            {
                Player1Alias = player12.Alias,
                Player1Id = player12.Id,
                Player1RaceCorpo = player12.RaceCorpo,
                Player1RaceRunner = player12.RaceRunner,

                Player2Alias = player21.Alias,
                Player2Id = player21.Id,
                Player2RaceCorpo = player21.RaceCorpo,
                Player2RaceRunner = player21.RaceRunner,
            };

            Final_16_09 = new Game()
            {
                Player1Alias = player02.Alias,
                Player1Id = player02.Id,
                Player1RaceCorpo = player02.RaceCorpo,
                Player1RaceRunner = player02.RaceRunner,

                Player2Alias = player31.Alias,
                Player2Id = player31.Id,
                Player2RaceCorpo = player31.RaceCorpo,
                Player2RaceRunner = player31.RaceRunner,
            };

            Final_16_10 = new Game()
            {
                Player1Alias = player15.Alias,
                Player1Id = player15.Id,
                Player1RaceCorpo = player15.RaceCorpo,
                Player1RaceRunner = player15.RaceRunner,

                Player2Alias = player18.Alias,
                Player2Id = player18.Id,
                Player2RaceCorpo = player18.RaceCorpo,
                Player2RaceRunner = player18.RaceRunner,
            };

            Final_16_11 = new Game()
            {
                Player1Alias = player07.Alias,
                Player1Id = player07.Id,
                Player1RaceCorpo = player07.RaceCorpo,
                Player1RaceRunner = player07.RaceRunner,

                Player2Alias = player26.Alias,
                Player2Id = player26.Id,
                Player2RaceCorpo = player26.RaceCorpo,
                Player2RaceRunner = player26.RaceRunner,
            };

            Final_16_12 = new Game()
            {
                Player1Alias = player10.Alias,
                Player1Id = player10.Id,
                Player1RaceCorpo = player10.RaceCorpo,
                Player1RaceRunner = player10.RaceRunner,

                Player2Alias = player23.Alias,
                Player2Id = player23.Id,
                Player2RaceCorpo = player23.RaceCorpo,
                Player2RaceRunner = player23.RaceRunner,
            };

            Final_16_13 = new Game()
            {
                Player1Alias = player03.Alias,
                Player1Id = player03.Id,
                Player1RaceCorpo = player03.RaceCorpo,
                Player1RaceRunner = player03.RaceRunner,

                Player2Alias = player30.Alias,
                Player2Id = player30.Id,
                Player2RaceCorpo = player30.RaceCorpo,
                Player2RaceRunner = player30.RaceRunner,
            };

            Final_16_14 = new Game()
            {
                Player1Alias = player14.Alias,
                Player1Id = player14.Id,
                Player1RaceCorpo = player14.RaceCorpo,
                Player1RaceRunner = player14.RaceRunner,

                Player2Alias = player19.Alias,
                Player2Id = player19.Id,
                Player2RaceCorpo = player19.RaceCorpo,
                Player2RaceRunner = player19.RaceRunner,
            };

            Final_16_15 = new Game()
            {
                Player1Alias = player06.Alias,
                Player1Id = player06.Id,
                Player1RaceCorpo = player06.RaceCorpo,
                Player1RaceRunner = player06.RaceRunner,

                Player2Alias = player27.Alias,
                Player2Id = player27.Id,
                Player2RaceCorpo = player27.RaceCorpo,
                Player2RaceRunner = player27.RaceRunner,
            };

            Final_16_16 = new Game()
            {
                Player1Alias = player11.Alias,
                Player1Id = player11.Id,
                Player1RaceCorpo = player11.RaceCorpo,
                Player1RaceRunner = player11.RaceRunner,

                Player2Alias = player22.Alias,
                Player2Id = player22.Id,
                Player2RaceCorpo = player22.RaceCorpo,
                Player2RaceRunner = player22.RaceRunner,
            };

            final_16_01.DiceSystemTop(topplayers);
            final_16_02.DiceSystemTop(topplayers);
            final_16_03.DiceSystemTop(topplayers);
            final_16_04.DiceSystemTop(topplayers);
            final_16_05.DiceSystemTop(topplayers);
            final_16_06.DiceSystemTop(topplayers);
            final_16_07.DiceSystemTop(topplayers);
            final_16_08.DiceSystemTop(topplayers);
            final_16_09.DiceSystemTop(topplayers);
            final_16_10.DiceSystemTop(topplayers);
            final_16_11.DiceSystemTop(topplayers);
            final_16_12.DiceSystemTop(topplayers);
            final_16_13.DiceSystemTop(topplayers);
            final_16_14.DiceSystemTop(topplayers);
            final_16_15.DiceSystemTop(topplayers);
            final_16_16.DiceSystemTop(topplayers);


            final_16_01.ScoreChanged += final16_ScoreChanged;
            final_16_02.ScoreChanged += final16_ScoreChanged;
            final_16_03.ScoreChanged += final16_ScoreChanged;
            final_16_04.ScoreChanged += final16_ScoreChanged;
            final_16_05.ScoreChanged += final16_ScoreChanged;
            final_16_06.ScoreChanged += final16_ScoreChanged;
            final_16_07.ScoreChanged += final16_ScoreChanged;
            final_16_08.ScoreChanged += final16_ScoreChanged;
            final_16_09.ScoreChanged += final16_ScoreChanged;
            final_16_10.ScoreChanged += final16_ScoreChanged;
            final_16_11.ScoreChanged += final16_ScoreChanged;
            final_16_12.ScoreChanged += final16_ScoreChanged;
            final_16_13.ScoreChanged += final16_ScoreChanged;
            final_16_14.ScoreChanged += final16_ScoreChanged;
            final_16_15.ScoreChanged += final16_ScoreChanged;
            final_16_16.ScoreChanged += final16_ScoreChanged;

            return true;
        }
Пример #2
0
        public bool StartPlayoffs8(IEnumerable<Player> players)
        {
            this.ClearPlayoffs();

            StartRound = PlayoffRound.Final_8;

            topplayers = players.Where(p => p.Active == true).OrderBy(p => p.Place).ToList();

            if (topplayers.Count() < 16) return false;

            topplayers = topplayers.Take(16);

            Player player01 = topplayers.ElementAt(0);
            Player player02 = topplayers.ElementAt(1);
            Player player03 = topplayers.ElementAt(2);
            Player player04 = topplayers.ElementAt(3);
            Player player05 = topplayers.ElementAt(4);
            Player player06 = topplayers.ElementAt(5);
            Player player07 = topplayers.ElementAt(6);
            Player player08 = topplayers.ElementAt(7);
            Player player09 = topplayers.ElementAt(8);
            Player player10 = topplayers.ElementAt(9);
            Player player11 = topplayers.ElementAt(10);
            Player player12 = topplayers.ElementAt(11);
            Player player13 = topplayers.ElementAt(12);
            Player player14 = topplayers.ElementAt(13);
            Player player15 = topplayers.ElementAt(14);
            Player player16 = topplayers.ElementAt(15);

            Final_8_01 = new Game()
            {
                Player1Alias = player01.Alias,
                Player1Id = player01.Id,
                Player1RaceCorpo = player01.RaceCorpo,
                Player1RaceRunner = player01.RaceRunner,

                Player2Alias = player16.Alias,
                Player2Id = player16.Id,
                Player2RaceCorpo = player16.RaceCorpo,
                Player2RaceRunner = player16.RaceRunner,
            };

            Final_8_02 = new Game()
            {
                Player1Alias = player08.Alias,
                Player1Id = player08.Id,
                Player1RaceCorpo = player08.RaceCorpo,
                Player1RaceRunner = player08.RaceRunner,

                Player2Alias = player09.Alias,
                Player2Id = player09.Id,
                Player2RaceCorpo = player09.RaceCorpo,
                Player2RaceRunner = player09.RaceRunner,
            };

            Final_8_03 = new Game()
            {
                Player1Alias = player04.Alias,
                Player1Id = player04.Id,
                Player1RaceCorpo = player04.RaceCorpo,
                Player1RaceRunner = player04.RaceRunner,

                Player2Alias = player13.Alias,
                Player2Id = player13.Id,
                Player2RaceCorpo = player13.RaceCorpo,
                Player2RaceRunner = player13.RaceRunner,
            };

            Final_8_04 = new Game()
            {
                Player1Alias = player05.Alias,
                Player1Id = player05.Id,
                Player1RaceCorpo = player05.RaceCorpo,
                Player1RaceRunner = player05.RaceRunner,

                Player2Alias = player12.Alias,
                Player2Id = player12.Id,
                Player2RaceCorpo = player12.RaceCorpo,
                Player2RaceRunner = player12.RaceRunner,
            };

            Final_8_05 = new Game()
            {
                Player1Alias = player02.Alias,
                Player1Id = player02.Id,
                Player1RaceCorpo = player02.RaceCorpo,
                Player1RaceRunner = player02.RaceRunner,

                Player2Alias = player15.Alias,
                Player2Id = player15.Id,
                Player2RaceCorpo = player15.RaceCorpo,
                Player2RaceRunner = player15.RaceRunner,
            };

            Final_8_06 = new Game()
            {
                Player1Alias = player07.Alias,
                Player1Id = player07.Id,
                Player1RaceCorpo = player07.RaceCorpo,
                Player1RaceRunner = player07.RaceRunner,

                Player2Alias = player10.Alias,
                Player2Id = player10.Id,
                Player2RaceCorpo = player10.RaceCorpo,
                Player2RaceRunner = player10.RaceRunner,
            };

            Final_8_07 = new Game()
            {
                Player1Alias = player03.Alias,
                Player1Id = player03.Id,
                Player1RaceCorpo = player03.RaceCorpo,
                Player1RaceRunner = player03.RaceRunner,

                Player2Alias = player14.Alias,
                Player2Id = player14.Id,
                Player2RaceCorpo = player14.RaceCorpo,
                Player2RaceRunner = player14.RaceRunner,
            };

            Final_8_08 = new Game()
            {
                Player1Alias = player06.Alias,
                Player1Id = player06.Id,
                Player1RaceCorpo = player06.RaceCorpo,
                Player1RaceRunner = player06.RaceRunner,

                Player2Alias = player11.Alias,
                Player2Id = player11.Id,
                Player2RaceCorpo = player11.RaceCorpo,
                Player2RaceRunner = player11.RaceRunner,
            };

            final_8_01.DiceSystemTop(topplayers);
            final_8_02.DiceSystemTop(topplayers);
            final_8_03.DiceSystemTop(topplayers);
            final_8_04.DiceSystemTop(topplayers);
            final_8_05.DiceSystemTop(topplayers);
            final_8_06.DiceSystemTop(topplayers);
            final_8_07.DiceSystemTop(topplayers);
            final_8_08.DiceSystemTop(topplayers);

            final_8_01.ScoreChanged += final8_ScoreChanged;
            final_8_02.ScoreChanged += final8_ScoreChanged;
            final_8_03.ScoreChanged += final8_ScoreChanged;
            final_8_04.ScoreChanged += final8_ScoreChanged;
            final_8_05.ScoreChanged += final8_ScoreChanged;
            final_8_06.ScoreChanged += final8_ScoreChanged;
            final_8_07.ScoreChanged += final8_ScoreChanged;
            final_8_08.ScoreChanged += final8_ScoreChanged;

            return true;
        }
Пример #3
0
        public bool StartPlayoffsFinal(IEnumerable<Player> players)
        {
            this.ClearPlayoffs();
            StartRound = PlayoffRound.Final;

            topplayers = players.Where(p => p.Active == true).OrderBy(p => p.Place).ToList();

            if (topplayers.Count() < 4) return false;

            topplayers = topplayers.Take(4);

            Player player01 = topplayers.ElementAt(0);
            Player player02 = topplayers.ElementAt(1);
            Player player03 = topplayers.ElementAt(2);
            Player player04 = topplayers.ElementAt(3);

            Final = new Game()
            {
                Player1Alias = player01.Alias,
                Player1Id = player01.Id,
                Player1RaceCorpo = player01.RaceCorpo,
                Player1RaceRunner = player01.RaceRunner,

                Player2Alias = player02.Alias,
                Player2Id = player02.Id,
                Player2RaceCorpo = player02.RaceCorpo,
                Player2RaceRunner = player02.RaceRunner,
            };

            Game3rdPlace = new Game()
            {
                Player1Alias = player03.Alias,
                Player1Id = player03.Id,
                Player1RaceCorpo = player03.RaceCorpo,
                Player1RaceRunner = player03.RaceRunner,

                Player2Alias = player04.Alias,
                Player2Id = player04.Id,
                Player2RaceCorpo = player04.RaceCorpo,
                Player2RaceRunner = player04.RaceRunner,
            };

            final.DiceSystemTop(topplayers);
            game3rdplace.DiceSystemTop(topplayers);

            final.ScoreChanged += final_ScoreChanged;
            game3rdplace.ScoreChanged += final_ScoreChanged;

            return true;
        }
Пример #4
0
        public void ClearPlayoffs()
        {
            this.startround = PlayoffRound.Final_16;
            this.topplayers = null;

            if (final_16_01 != null) final_16_01.ScoreChanged -= final16_ScoreChanged;
            if (final_16_02 != null) final_16_02.ScoreChanged -= final16_ScoreChanged;
            if (final_16_03 != null) final_16_03.ScoreChanged -= final16_ScoreChanged;
            if (final_16_04 != null) final_16_04.ScoreChanged -= final16_ScoreChanged;
            if (final_16_05 != null) final_16_05.ScoreChanged -= final16_ScoreChanged;
            if (final_16_06 != null) final_16_06.ScoreChanged -= final16_ScoreChanged;
            if (final_16_07 != null) final_16_07.ScoreChanged -= final16_ScoreChanged;
            if (final_16_08 != null) final_16_08.ScoreChanged -= final16_ScoreChanged;
            if (final_16_09 != null) final_16_09.ScoreChanged -= final16_ScoreChanged;
            if (final_16_10 != null) final_16_10.ScoreChanged -= final16_ScoreChanged;
            if (final_16_11 != null) final_16_11.ScoreChanged -= final16_ScoreChanged;
            if (final_16_12 != null) final_16_12.ScoreChanged -= final16_ScoreChanged;
            if (final_16_13 != null) final_16_13.ScoreChanged -= final16_ScoreChanged;
            if (final_16_14 != null) final_16_14.ScoreChanged -= final16_ScoreChanged;
            if (final_16_15 != null) final_16_15.ScoreChanged -= final16_ScoreChanged;
            if (final_16_16 != null) final_16_16.ScoreChanged -= final16_ScoreChanged;

            if (final_8_01 != null) final_8_01.ScoreChanged -= final8_ScoreChanged;
            if (final_8_02 != null) final_8_02.ScoreChanged -= final8_ScoreChanged;
            if (final_8_03 != null) final_8_03.ScoreChanged -= final8_ScoreChanged;
            if (final_8_04 != null) final_8_04.ScoreChanged -= final8_ScoreChanged;
            if (final_8_05 != null) final_8_05.ScoreChanged -= final8_ScoreChanged;
            if (final_8_06 != null) final_8_06.ScoreChanged -= final8_ScoreChanged;
            if (final_8_07 != null) final_8_07.ScoreChanged -= final8_ScoreChanged;
            if (final_8_08 != null) final_8_08.ScoreChanged -= final8_ScoreChanged;

            if (final_4_01 != null) final_4_01.ScoreChanged -= final4_ScoreChanged;
            if (final_4_02 != null) final_4_02.ScoreChanged -= final4_ScoreChanged;
            if (final_4_03 != null) final_4_03.ScoreChanged -= final4_ScoreChanged;
            if (final_4_04 != null) final_4_04.ScoreChanged -= final4_ScoreChanged;

            if (final_2_01 != null) final_2_01.ScoreChanged -= final2_ScoreChanged;
            if (final_2_02 != null) final_2_02.ScoreChanged -= final2_ScoreChanged;

            if (final != null) final.ScoreChanged -= final_ScoreChanged;
            if (game3rdplace != null) game3rdplace.ScoreChanged -= final_ScoreChanged;

            final_16_01 = null;
            final_16_02 = null;
            final_16_03 = null;
            final_16_04 = null;
            final_16_05 = null;
            final_16_06 = null;
            final_16_07 = null;
            final_16_08 = null;
            final_16_09 = null;
            final_16_10 = null;
            final_16_11 = null;
            final_16_12 = null;
            final_16_13 = null;
            final_16_14 = null;
            final_16_15 = null;
            final_16_16 = null;

            final_8_01 = null;
            final_8_02 = null;
            final_8_03 = null;
            final_8_04 = null;
            final_8_05 = null;
            final_8_06 = null;
            final_8_07 = null;
            final_8_08 = null;

            final_4_01 = null;
            final_4_02 = null;
            final_4_03 = null;
            final_4_04 = null;

            final_2_01 = null;
            final_2_02 = null;

            final = null;
            game3rdplace = null;

            NotifyPropertyChanged("Final_16_01");
            NotifyPropertyChanged("Final_16_02");
            NotifyPropertyChanged("Final_16_03");
            NotifyPropertyChanged("Final_16_04");
            NotifyPropertyChanged("Final_16_05");
            NotifyPropertyChanged("Final_16_06");
            NotifyPropertyChanged("Final_16_07");
            NotifyPropertyChanged("Final_16_08");
            NotifyPropertyChanged("Final_16_09");
            NotifyPropertyChanged("Final_16_10");
            NotifyPropertyChanged("Final_16_11");
            NotifyPropertyChanged("Final_16_12");
            NotifyPropertyChanged("Final_16_13");
            NotifyPropertyChanged("Final_16_14");
            NotifyPropertyChanged("Final_16_15");
            NotifyPropertyChanged("Final_16_16");

            NotifyPropertyChanged("Final_8_01");
            NotifyPropertyChanged("Final_8_02");
            NotifyPropertyChanged("Final_8_03");
            NotifyPropertyChanged("Final_8_04");
            NotifyPropertyChanged("Final_8_05");
            NotifyPropertyChanged("Final_8_06");
            NotifyPropertyChanged("Final_8_07");
            NotifyPropertyChanged("Final_8_08");

            NotifyPropertyChanged("Final_4_01");
            NotifyPropertyChanged("Final_4_02");
            NotifyPropertyChanged("Final_4_03");
            NotifyPropertyChanged("Final_4_04");

            NotifyPropertyChanged("Final_2_01");
            NotifyPropertyChanged("Final_2_02");

            NotifyPropertyChanged("Final");
            NotifyPropertyChanged("Game3rdPlace");

            NotifyPropertyChanged("StartRound");
        }
Пример #5
0
        public bool StartPlayoffs4(IEnumerable<Player> players)
        {
            this.ClearPlayoffs();

            StartRound = PlayoffRound.Final_4;

            topplayers = players.Where(p => p.Active == true).OrderBy(p => p.Place).ToList();

            if (topplayers.Count() < 8) return false;

            topplayers = topplayers.Take(8);

            Player player01 = topplayers.ElementAt(0);
            Player player02 = topplayers.ElementAt(1);
            Player player03 = topplayers.ElementAt(2);
            Player player04 = topplayers.ElementAt(3);
            Player player05 = topplayers.ElementAt(4);
            Player player06 = topplayers.ElementAt(5);
            Player player07 = topplayers.ElementAt(6);
            Player player08 = topplayers.ElementAt(7);

            Final_4_01 = new Game()
            {
                Player1Alias = player01.Alias,
                Player1Id = player01.Id,
                Player1RaceCorpo = player01.RaceCorpo,
                Player1RaceRunner = player01.RaceRunner,

                Player2Alias = player08.Alias,
                Player2Id = player08.Id,
                Player2RaceCorpo = player08.RaceCorpo,
                Player2RaceRunner = player08.RaceRunner,
            };

            Final_4_02 = new Game()
            {
                Player1Alias = player04.Alias,
                Player1Id = player04.Id,
                Player1RaceCorpo = player04.RaceCorpo,
                Player1RaceRunner = player04.RaceRunner,

                Player2Alias = player05.Alias,
                Player2Id = player05.Id,
                Player2RaceCorpo = player05.RaceCorpo,
                Player2RaceRunner = player05.RaceRunner,
            };

            Final_4_03 = new Game()
            {
                Player1Alias = player02.Alias,
                Player1Id = player02.Id,
                Player1RaceCorpo = player02.RaceCorpo,
                Player1RaceRunner = player02.RaceRunner,

                Player2Alias = player07.Alias,
                Player2Id = player07.Id,
                Player2RaceCorpo = player07.RaceCorpo,
                Player2RaceRunner = player07.RaceRunner,
            };

            Final_4_04 = new Game()
            {
                Player1Alias = player03.Alias,
                Player1Id = player03.Id,
                Player1RaceCorpo = player03.RaceCorpo,
                Player1RaceRunner = player03.RaceRunner,

                Player2Alias = player06.Alias,
                Player2Id = player06.Id,
                Player2RaceCorpo = player06.RaceCorpo,
                Player2RaceRunner = player06.RaceRunner,
            };

            final_4_01.DiceSystemTop(topplayers);
            final_4_02.DiceSystemTop(topplayers);
            final_4_03.DiceSystemTop(topplayers);
            final_4_04.DiceSystemTop(topplayers);

            final_4_01.ScoreChanged += final4_ScoreChanged;
            final_4_02.ScoreChanged += final4_ScoreChanged;
            final_4_03.ScoreChanged += final4_ScoreChanged;
            final_4_04.ScoreChanged += final4_ScoreChanged;

            return true;
        }
Пример #6
0
        private void final2_ScoreChanged(object sender, EventArgs e)
        {
            if ((this.final_2_01.Player1Score1 == 0 && this.final_2_01.Player1Score2 == 0 && this.final_2_01.Player2Score1 == 0 && this.final_2_01.Player2Score2 == 0) ||
                (this.final_2_02.Player1Score1 == 0 && this.final_2_02.Player1Score2 == 0 && this.final_2_02.Player2Score1 == 0 && this.final_2_02.Player2Score2 == 0)) return;

            Final = Game.GetNextPlayoffGame(final_2_01, final_2_02, this.topplayers);

            Game3rdPlace = new Game();

            if (final.Player1Id == final_2_01.Player1Id)
            {
                game3rdplace.Player1Alias = final_2_01.Player2Alias;
                game3rdplace.Player1Id = final_2_01.Player2Id;
                game3rdplace.Player1RaceCorpo = final_2_01.Player2RaceCorpo;
                game3rdplace.Player1RaceRunner = final_2_01.Player2RaceRunner;
            }
            else
            {
                game3rdplace.Player1Alias = final_2_01.Player1Alias;
                game3rdplace.Player1Id = final_2_01.Player1Id;
                game3rdplace.Player1RaceCorpo = final_2_01.Player1RaceCorpo;
                game3rdplace.Player1RaceRunner = final_2_01.Player1RaceRunner;
            }

            if (final.Player2Id == final_2_02.Player1Id)
            {
                game3rdplace.Player2Alias = final_2_02.Player2Alias;
                game3rdplace.Player2Id = final_2_02.Player2Id;
                game3rdplace.Player2RaceCorpo = final_2_02.Player2RaceCorpo;
                game3rdplace.Player2RaceRunner = final_2_02.Player2RaceRunner;
            }
            else
            {
                game3rdplace.Player2Alias = final_2_02.Player1Alias;
                game3rdplace.Player2Id = final_2_02.Player1Id;
                game3rdplace.Player2RaceCorpo = final_2_02.Player1RaceCorpo;
                game3rdplace.Player2RaceRunner = final_2_02.Player1RaceRunner;
            }

            final.DiceSystemTop(topplayers);
            game3rdplace.DiceSystemTop(topplayers);

            final.ScoreChanged += final_ScoreChanged;
            game3rdplace.ScoreChanged += final_ScoreChanged;
        }
Пример #7
0
        public void AddPlayer(Player playerToAdd)
        {
            IEnumerable<Player> activePlayers = this.PointsTable.Where(p => p.Active == true);

            //utwórz kombinacje wszystkich gier między graczem dodawanym a innymi
            for (int indexPlayer1 = 0; indexPlayer1 < activePlayers.Count(); indexPlayer1++)
            {
                Player player1 = activePlayers.ElementAt(indexPlayer1);
                Game game = new Game()
                {
                    Player1Alias = player1.Alias,
                    Player1Id = player1.Id,
                    Player2Alias = playerToAdd.Alias,
                    Player2Id = playerToAdd.Id,
                    Player1RaceCorpo = player1.RaceCorpo,
                    Player1RaceRunner = player1.RaceRunner,
                    Player2RaceCorpo = playerToAdd.RaceCorpo,
                    Player2RaceRunner = playerToAdd.RaceRunner,
                };

                this.allGames.Add(game);
            }

            this.PointsTable.Add(playerToAdd);

            //dogeneruj BYE jeśli nieparzysta liczba graczy
            if (activePlayers.Count() % 2 == 1)
            {
                //Dla wszystkich
                foreach (Player player1 in activePlayers)
                {
                    Game game = new Game()
                    {
                        Player1Alias = player1.Alias,
                        Player1Id = player1.Id,
                        Player1RaceCorpo = player1.RaceCorpo,
                        Player1RaceRunner = player1.RaceRunner,
                        IsBYE = true,
                    };

                    allGames.Add(game);
                }

                //Game gameBYE = new Game()
                //{
                //    Player1Alias = playerToAdd.Alias,
                //    Player1Id = playerToAdd.Id,
                //    Player1Race = playerToAdd.Race,
                //    Score = GameScore.Score_BYE,
                //};

                //allGames.Add(gameBYE);
            }
            else
            {
                //usuń BYE bo już jest parzysta liczba graczy
                List<Game> gamesToDel = this.allGames.Where(g => g.Player2Id == Guid.Empty && g.IsBYE == true).ToList();

                foreach (Game game in gamesToDel)
                {
                    this.allGames.Remove(game);
                }
            }

            if (Rounds.Count > 0)
            {
                bool addToLastRound = playerToAdd.AddPlayerToLastRound;
                if (addToLastRound)
                {
                    ObservableCollection<Round> activeRounds = Rounds;
                    Round lastRound = activeRounds[activeRounds.Count - 1];
                    Game lastGame = lastRound.Games[lastRound.Games.Count - 1];
                    if (lastGame.IsBYE)
                    {
                        lastGame.IsBYE = false;
                        lastGame.Player2Alias = playerToAdd.Alias;
                        lastGame.Player2Id = playerToAdd.Id;
                        lastGame.Player2RaceCorpo = playerToAdd.RaceCorpo;
                        lastGame.Player2RaceRunner = playerToAdd.RaceRunner;
                    }
                    else
                    {
                        Game game = new Game()
                        {
                            Player1Alias = playerToAdd.Alias,
                            Player1Id = playerToAdd.Id,
                            Player1RaceCorpo = playerToAdd.RaceCorpo,
                            Player1RaceRunner = playerToAdd.RaceRunner,
                            IsBYE = true,
                            Number = lastGame.Number + 1,
                        };
                        lastRound.Games.Add(game);
                    }

                }
            }
        }
Пример #8
0
        public void ActivatePlayer(Player playerToActivate)
        {
            playerToActivate.Active = true;

            IEnumerable<Player> activePlayers = this.PointsTable.Where(p => p.Active == true);

            //utwórz kombinacje wszystkich gier między graczem aktywowanym a innymi
            for (int indexPlayer1 = 0; indexPlayer1 < activePlayers.Count(); indexPlayer1++)
            {
                Player player1 = activePlayers.ElementAt(indexPlayer1);

                if (this.Rounds.Where(r => r.Games.Where(g => (g.Player1Id == player1.Id &&
                                                               g.Player2Id == playerToActivate.Id) ||
                                                              (g.Player2Id == player1.Id &&
                                                               g.Player1Id == playerToActivate.Id)).Count() > 0).Count() > 0) continue;

                Game game = new Game()
                {
                    Player1Alias = player1.Alias,
                    Player1Id = player1.Id,
                    Player2Alias = playerToActivate.Alias,
                    Player2Id = playerToActivate.Id,
                    Player1RaceCorpo = player1.RaceCorpo,
                    Player1RaceRunner = player1.RaceRunner,
                    Player2RaceCorpo = playerToActivate.RaceCorpo,
                    Player2RaceRunner = playerToActivate.RaceRunner,
                };

                this.allGames.Add(game);
            }

            //dogeneruj BYE jeśli nieparzysta liczba graczy
            if (activePlayers.Count() % 2 == 1)
            {
                foreach (Player player1 in activePlayers)
                {
                    if (this.Rounds.Where(r => r.Games.Where(g => g.Player1Id == player1.Id &&
                                                                  g.Player2Id == Guid.Empty &&
                                                                  g.IsBYE == true).Count() > 0).Count() > 0) continue;

                    Game game = new Game()
                    {
                        Player1Alias = player1.Alias,
                        Player1Id = player1.Id,
                        Player1RaceCorpo = player1.RaceCorpo,
                        Player1RaceRunner = player1.RaceRunner,
                        IsBYE = true,
                    };

                    allGames.Add(game);
                }
            }
            else
            {
                //usuń BYE bo już jest parzysta liczba graczy
                List<Game> gamesToDel = this.allGames.Where(g => g.Player2Id == Guid.Empty && g.IsBYE == true).ToList();

                foreach (Game game in gamesToDel)
                {
                    this.allGames.Remove(game);
                }
            }
        }
Пример #9
0
        /// <summary>
        /// Generuje kolekcje allGames
        /// </summary>
        public void GenerateAllGames()
        {
            if (this.rounds.Count > 0) return;

            IEnumerable<Player> activePlayers = this.PointsTable.Where(p => p.Active == true);

            this.allGames.Clear();

            //utwórz kombinacje wszystkich gier między graczami
            for (int indexPlayer1 = 0; indexPlayer1 < activePlayers.Count(); indexPlayer1++)
            {
                for (int indexPlayer2 = indexPlayer1 + 1; indexPlayer2 < activePlayers.Count(); indexPlayer2++)
                {
                    Player player1 = activePlayers.ElementAt(indexPlayer1);
                    Player player2 = activePlayers.ElementAt(indexPlayer2);
                    Game game = new Game()
                    {
                        Player1Alias = player1.Alias,
                        Player1Id = player1.Id,
                        Player2Alias = player2.Alias,
                        Player2Id = player2.Id,
                        Player1RaceCorpo = player1.RaceCorpo,
                        Player1RaceRunner = player1.RaceRunner,
                        Player2RaceCorpo = player2.RaceCorpo,
                        Player2RaceRunner = player2.RaceRunner,
                    };

                    this.allGames.Add(game);
                }
            }

            //dogeneruj BYE jeśli nieparzysta liczba graczy
            //if (activePlayers.Count() % 2 == 1)
            //{
                foreach (Player player1 in activePlayers)
                {
                    Game game = new Game()
                    {
                        Player1Alias = player1.Alias,
                        Player1Id = player1.Id,
                        Player1RaceRunner = player1.RaceRunner,
                        Player1RaceCorpo = player1.RaceCorpo,
                        IsBYE = true,
                    };

                    allGames.Add(game);
                }
            //}
        }
Пример #10
0
        public void RemovePlayer(Player playerToDel)
        {
            if (this.Rounds.Count == 0)
            {
                this.PointsTable.Remove(playerToDel);
                this.RefreshPointsTable();
            }
            else
            {
                playerToDel.Active = false;
            }

            //Usunięcie gier playera
            List<Game> gamesToDel = this.allGames.Where(g => g.Player1Id == playerToDel.Id || g.Player2Id == playerToDel.Id).ToList();
            foreach (Game game in gamesToDel)
            {
                this.allGames.Remove(game);
            }

            IEnumerable<Player> activePlayers = this.PointsTable.Where(p => p.Active == true);
            if (activePlayers.Count() % 2 == 0)
            {
                //usuń BYE bo już jest parzysta liczba graczy
                List<Game> byesToDel = this.allGames.Where(g => g.Player2Id == Guid.Empty && g.IsBYE == true).ToList();

                foreach (Game game in byesToDel)
                {
                    this.allGames.Remove(game);
                }
            }
            else
            {
                //dodaj bye bo nieparzysta liczba
                foreach (Player player1 in activePlayers)
                {
                    if (this.Rounds.Where(r => r.Games.Where(g => g.Player1Id == player1.Id && g.Player2Id == Guid.Empty && g.IsBYE == true).Count() > 0).Count() > 0) continue;

                    Game game = new Game()
                    {
                        Player1Alias = player1.Alias,
                        Player1Id = player1.Id,
                        Player1RaceCorpo = player1.RaceCorpo,
                        Player1RaceRunner = player1.RaceRunner,
                        IsBYE = true,
                    };

                    allGames.Add(game);
                }
            }
        }
Пример #11
0
        public static Game GetNextPlayoffGameLosers(Game game1, Game game2, IEnumerable<Player> playerslist)
        {
            Game gameToRet = new Game();

            //Rozpatrzenie pierwszej gry
            if (game1.Player1Score1 + game1.Player1Score2 < game1.Player2Score1 + game1.Player2Score2)
            {
                gameToRet.Player1Alias = game1.Player1Alias;
                gameToRet.Player1Id = game1.Player1Id;
                gameToRet.Player1RaceCorpo = game1.Player1RaceCorpo;
                gameToRet.Player1RaceRunner = game1.Player1RaceRunner;
            }
            else if (game1.Player1Score1 + game1.Player1Score2 == game1.Player2Score1 + game1.Player2Score2)
            {
                int player1place = Game.GetPlayerPlace(game1.Player1Id, playerslist);
                int player2place = Game.GetPlayerPlace(game1.Player2Id, playerslist);

                if (player1place > player2place)
                {
                    gameToRet.Player1Alias = game1.Player1Alias;
                    gameToRet.Player1Id = game1.Player1Id;
                    gameToRet.Player1RaceCorpo = game1.Player1RaceCorpo;
                    gameToRet.Player1RaceRunner = game1.Player1RaceRunner;
                }
                else
                {
                    gameToRet.Player1Alias = game1.Player2Alias;
                    gameToRet.Player1Id = game1.Player2Id;
                    gameToRet.Player1RaceCorpo = game1.Player2RaceCorpo;
                    gameToRet.Player1RaceRunner = game1.Player2RaceRunner;
                }
            }
            else
            {
                gameToRet.Player1Alias = game1.Player2Alias;
                gameToRet.Player1Id = game1.Player2Id;
                gameToRet.Player1RaceCorpo = game1.Player2RaceCorpo;
                gameToRet.Player1RaceRunner = game1.Player2RaceRunner;
            }

            //Rozpatrzenie drugiej gry
            if (game2.Player1Score1 + game2.Player1Score2 < game2.Player2Score1 + game2.Player2Score2)
            {
                gameToRet.Player2Alias = game2.Player1Alias;
                gameToRet.Player2Id = game2.Player1Id;
                gameToRet.Player2RaceCorpo = game2.Player1RaceCorpo;
                gameToRet.Player2RaceRunner = game2.Player1RaceRunner;
            }
            else if (game2.Player1Score1 + game2.Player1Score2 == game2.Player2Score1 + game2.Player2Score2)
            {
                int player1place = Game.GetPlayerPlace(game2.Player1Id, playerslist);
                int player2place = Game.GetPlayerPlace(game2.Player2Id, playerslist);

                if (player1place > player2place)
                {
                    gameToRet.Player2Alias = game2.Player1Alias;
                    gameToRet.Player2Id = game2.Player1Id;
                    gameToRet.Player2RaceCorpo = game2.Player1RaceCorpo;
                    gameToRet.Player2RaceRunner = game2.Player1RaceRunner;
                }
                else
                {
                    gameToRet.Player2Alias = game2.Player2Alias;
                    gameToRet.Player2Id = game2.Player2Id;
                    gameToRet.Player2RaceCorpo = game2.Player2RaceCorpo;
                    gameToRet.Player2RaceRunner = game2.Player2RaceRunner;
                }
            }
            else
            {
                gameToRet.Player2Alias = game2.Player2Alias;
                gameToRet.Player2Id = game2.Player2Id;
                gameToRet.Player2RaceCorpo = game2.Player2RaceCorpo;
                gameToRet.Player2RaceRunner = game2.Player2RaceRunner;
            }

            return gameToRet;
        }
Пример #12
0
        public static Game GetNextPlayoffGameWinerLoser(Game gamewinner, Game gameloser, IEnumerable<Player> playerslist)
        {
            Game gameToRet = new Game();

            //Rozpatrzenie wygranego
            if (gamewinner.Player1Score1 + gamewinner.Player1Score2 > gamewinner.Player2Score1 + gamewinner.Player2Score2)
            {
                gameToRet.Player1Alias = gamewinner.Player1Alias;
                gameToRet.Player1Id = gamewinner.Player1Id;
                gameToRet.Player1RaceCorpo = gamewinner.Player1RaceCorpo;
                gameToRet.Player1RaceRunner = gamewinner.Player1RaceRunner;
            }
            else if (gamewinner.Player1Score1 + gamewinner.Player1Score2 == gamewinner.Player2Score1 + gamewinner.Player2Score2)
            {
                int player1place = Game.GetPlayerPlace(gamewinner.Player1Id, playerslist);
                int player2place = Game.GetPlayerPlace(gamewinner.Player2Id, playerslist);

                if (player1place < player2place)
                {
                    gameToRet.Player1Alias = gamewinner.Player1Alias;
                    gameToRet.Player1Id = gamewinner.Player1Id;
                    gameToRet.Player1RaceCorpo = gamewinner.Player1RaceCorpo;
                    gameToRet.Player1RaceRunner = gamewinner.Player1RaceRunner;
                }
                else
                {
                    gameToRet.Player1Alias = gamewinner.Player2Alias;
                    gameToRet.Player1Id = gamewinner.Player2Id;
                    gameToRet.Player1RaceCorpo = gamewinner.Player2RaceCorpo;
                    gameToRet.Player1RaceRunner = gamewinner.Player2RaceRunner;
                }
            }
            else
            {
                gameToRet.Player1Alias = gamewinner.Player2Alias;
                gameToRet.Player1Id = gamewinner.Player2Id;
                gameToRet.Player1RaceCorpo = gamewinner.Player2RaceCorpo;
                gameToRet.Player1RaceRunner = gamewinner.Player2RaceRunner;
            }

            //wypełnienie przegranego
            if (gameloser.Player1Score1 + gameloser.Player1Score2 < gameloser.Player2Score1 + gameloser.Player2Score2)
            {
                gameToRet.Player2Alias = gameloser.Player1Alias;
                gameToRet.Player2Id = gameloser.Player1Id;
                gameToRet.Player2RaceCorpo = gameloser.Player1RaceCorpo;
                gameToRet.Player2RaceRunner = gameloser.Player1RaceRunner;
            }
            else if (gameloser.Player1Score1 + gameloser.Player1Score2 == gameloser.Player2Score1 + gameloser.Player2Score2)
            {
                int player1place = Game.GetPlayerPlace(gameloser.Player1Id, playerslist);
                int player2place = Game.GetPlayerPlace(gameloser.Player2Id, playerslist);

                if (player1place > player2place)
                {
                    gameToRet.Player2Alias = gameloser.Player1Alias;
                    gameToRet.Player2Id = gameloser.Player1Id;
                    gameToRet.Player2RaceCorpo = gameloser.Player1RaceCorpo;
                    gameToRet.Player2RaceRunner = gameloser.Player1RaceRunner;
                }
                else
                {
                    gameToRet.Player2Alias = gameloser.Player2Alias;
                    gameToRet.Player2Id = gameloser.Player2Id;
                    gameToRet.Player2RaceCorpo = gameloser.Player2RaceCorpo;
                    gameToRet.Player2RaceRunner = gameloser.Player2RaceRunner;
                }
            }
            else
            {
                gameToRet.Player2Alias = gameloser.Player2Alias;
                gameToRet.Player2Id = gameloser.Player2Id;
                gameToRet.Player2RaceCorpo = gameloser.Player2RaceCorpo;
                gameToRet.Player2RaceRunner = gameloser.Player2RaceRunner;
            }

            return gameToRet;
        }
        private void final_14_ScoreChanged(object sender, EventArgs e)
        {
            this.Final_15 = null;

            if (this.final_14 == null) return;
            if (this.final_14.Player1Score1 == 0 && this.final_14.Player1Score2 == 0 && this.final_14.Player2Score1 == 0 && this.final_14.Player2Score2 == 0) return;

            Game game31 = Game.GetNextPlayoffGameWinerLoser(this.final_14, this.final_14, this.topplayers);

            //jeśli przegrany był również w grze 29 to koniec
            if (game31.Player2Id == this.final_13.Player1Id || game31.Player2Id == this.final_13.Player1Id) return;
            else
            {
                this.Final_15 = game31;
                this.Final_15.ScoreChanged += final_15_ScoreChanged;
            }
        }
        public void ClearPlayoffs()
        {
            this.topplayers = null;

            if (final_01 != null) final_01.ScoreChanged -= final_0104_ScoreChanged;
            if (final_02 != null) final_02.ScoreChanged -= final_0104_ScoreChanged;
            if (final_03 != null) final_03.ScoreChanged -= final_0104_ScoreChanged;
            if (final_04 != null) final_04.ScoreChanged -= final_0104_ScoreChanged;
            if (final_05 != null) final_05.ScoreChanged -= final_0508_ScoreChanged;
            if (final_06 != null) final_06.ScoreChanged -= final_0508_ScoreChanged;
            if (final_07 != null) final_07.ScoreChanged -= final_0508_ScoreChanged;
            if (final_08 != null) final_08.ScoreChanged -= final_0508_ScoreChanged;
            if (final_09 != null) final_09.ScoreChanged -= final_0913_ScoreChanged;
            if (final_10 != null) final_10.ScoreChanged -= final_1011_ScoreChanged;
            if (final_11 != null) final_11.ScoreChanged -= final_1011_ScoreChanged;
            if (final_12 != null) final_12.ScoreChanged -= final_12_ScoreChanged;
            if (final_13 != null) final_13.ScoreChanged -= final_0913_ScoreChanged;
            if (final_14 != null) final_14.ScoreChanged -= final_14_ScoreChanged;
            if (final_15 != null) final_15.ScoreChanged -= final_15_ScoreChanged;

            final_01 = null;
            final_02 = null;
            final_03 = null;
            final_04 = null;
            final_05 = null;
            final_06 = null;
            final_07 = null;
            final_08 = null;
            final_09 = null;
            final_10 = null;
            final_11 = null;
            final_12 = null;
            final_13 = null;
            final_14 = null;
            final_15 = null;

            NotifyPropertyChanged("Final_01");
            NotifyPropertyChanged("Final_02");
            NotifyPropertyChanged("Final_03");
            NotifyPropertyChanged("Final_04");
            NotifyPropertyChanged("Final_05");
            NotifyPropertyChanged("Final_06");
            NotifyPropertyChanged("Final_07");
            NotifyPropertyChanged("Final_08");
            NotifyPropertyChanged("Final_09");
            NotifyPropertyChanged("Final_10");
            NotifyPropertyChanged("Final_11");
            NotifyPropertyChanged("Final_12");
            NotifyPropertyChanged("Final_13");
            NotifyPropertyChanged("Final_14");
            NotifyPropertyChanged("Final_15");
        }
        public void ClearPlayoffs()
        {
            this.topplayers = null;

            if (final_01 != null) final_01.ScoreChanged -= final_0108_ScoreChanged;
            if (final_02 != null) final_02.ScoreChanged -= final_0108_ScoreChanged;
            if (final_03 != null) final_03.ScoreChanged -= final_0108_ScoreChanged;
            if (final_04 != null) final_04.ScoreChanged -= final_0108_ScoreChanged;
            if (final_05 != null) final_05.ScoreChanged -= final_0108_ScoreChanged;
            if (final_06 != null) final_06.ScoreChanged -= final_0108_ScoreChanged;
            if (final_07 != null) final_07.ScoreChanged -= final_0108_ScoreChanged;
            if (final_08 != null) final_08.ScoreChanged -= final_0108_ScoreChanged;

            if (final_09 != null) final_09.ScoreChanged -= final_0916_ScoreChanged;
            if (final_10 != null) final_10.ScoreChanged -= final_0916_ScoreChanged;
            if (final_11 != null) final_11.ScoreChanged -= final_0916_ScoreChanged;
            if (final_12 != null) final_12.ScoreChanged -= final_0916_ScoreChanged;
            if (final_13 != null) final_13.ScoreChanged -= final_0916_ScoreChanged;
            if (final_14 != null) final_14.ScoreChanged -= final_0916_ScoreChanged;
            if (final_15 != null) final_15.ScoreChanged -= final_0916_ScoreChanged;
            if (final_16 != null) final_16.ScoreChanged -= final_0916_ScoreChanged;

            if (final_17 != null) final_17.ScoreChanged -= final_1722_ScoreChanged;
            if (final_18 != null) final_18.ScoreChanged -= final_1722_ScoreChanged;
            if (final_19 != null) final_19.ScoreChanged -= final_1722_ScoreChanged;
            if (final_20 != null) final_20.ScoreChanged -= final_1722_ScoreChanged;
            if (final_21 != null) final_21.ScoreChanged -= final_1722_ScoreChanged;
            if (final_22 != null) final_22.ScoreChanged -= final_1722_ScoreChanged;

            if (final_23 != null) final_23.ScoreChanged -= final_2324_ScoreChanged;
            if (final_24 != null) final_24.ScoreChanged -= final_2324_ScoreChanged;

            if (final_25 != null) final_25.ScoreChanged -= final_2526_ScoreChanged;
            if (final_26 != null) final_26.ScoreChanged -= final_2526_ScoreChanged;

            if (final_27 != null) final_27.ScoreChanged -= final_2729_ScoreChanged;
            if (final_28 != null) final_28.ScoreChanged -= final_28_ScoreChanged;
            if (final_29 != null) final_29.ScoreChanged -= final_2729_ScoreChanged;
            if (final_30 != null) final_30.ScoreChanged -= final_30_ScoreChanged;
            if (final_31 != null) final_31.ScoreChanged -= final_31_ScoreChanged;

            final_01 = null;
            final_02 = null;
            final_03 = null;
            final_04 = null;
            final_05 = null;
            final_06 = null;
            final_07 = null;
            final_08 = null;
            final_09 = null;
            final_10 = null;
            final_11 = null;
            final_12 = null;
            final_13 = null;
            final_14 = null;
            final_15 = null;
            final_16 = null;
            final_17 = null;
            final_18 = null;
            final_19 = null;
            final_20 = null;
            final_21 = null;
            final_22 = null;
            final_23 = null;
            final_24 = null;
            final_25 = null;
            final_26 = null;
            final_27 = null;
            final_28 = null;
            final_29 = null;
            final_30 = null;
            final_31 = null;

            NotifyPropertyChanged("Final_01");
            NotifyPropertyChanged("Final_02");
            NotifyPropertyChanged("Final_03");
            NotifyPropertyChanged("Final_04");
            NotifyPropertyChanged("Final_05");
            NotifyPropertyChanged("Final_06");
            NotifyPropertyChanged("Final_07");
            NotifyPropertyChanged("Final_08");
            NotifyPropertyChanged("Final_09");
            NotifyPropertyChanged("Final_10");
            NotifyPropertyChanged("Final_11");
            NotifyPropertyChanged("Final_12");
            NotifyPropertyChanged("Final_13");
            NotifyPropertyChanged("Final_14");
            NotifyPropertyChanged("Final_15");
            NotifyPropertyChanged("Final_16");
            NotifyPropertyChanged("Final_17");
            NotifyPropertyChanged("Final_18");
            NotifyPropertyChanged("Final_19");
            NotifyPropertyChanged("Final_20");
            NotifyPropertyChanged("Final_21");
            NotifyPropertyChanged("Final_22");
            NotifyPropertyChanged("Final_23");
            NotifyPropertyChanged("Final_24");
            NotifyPropertyChanged("Final_25");
            NotifyPropertyChanged("Final_26");
            NotifyPropertyChanged("Final_27");
            NotifyPropertyChanged("Final_28");
            NotifyPropertyChanged("Final_29");
            NotifyPropertyChanged("Final_30");
            NotifyPropertyChanged("Final_31");
        }