Beispiel #1
0
        public static void test()
        {
            List <gracz>            gracze  = new List <gracz>();
            List <zapis_do_druzyny> zapisy  = new List <zapis_do_druzyny>();
            List <druzyna>          druzyny = new List <druzyna>();

            for (int i = 0; i < 4; i++)
            {
                gracze.Add(new gracz {
                    IDGracza = i
                });
                zapisy.Add(new zapis_do_druzyny {
                    idZapis_do_druzyny = i, idGracza = i, idDruzyny = i / 2
                });
                if (i % 2 == 0)
                {
                    druzyny.Add(new druzyna {
                        idDruzyny = i / 2, idMeczu = 1
                    });
                }
            }

            druzyny[0].Kolor_druzyny = "red";
            druzyny[1].Kolor_druzyny = "blue";
            List <zdarzenie> zdarzenia = setListZdarzenia(1, 1);

            List <udzial>    udzialy = StworzUdzialy(1, zdarzenia, gracze, zapisy);
            statystyki_meczu stat    = setStatyMeczu(zdarzenia, udzialy, druzyny, zapisy, 1, 1);

            int aa = 0;
        }
Beispiel #2
0
        public static statystyki_meczu setStatyMeczu(List <zdarzenie> zdarzenie, List <udzial> udzial, List <druzyna> druzyna, List <zapis_do_druzyny> zapis, int idStatystykiMeczu, int idMeczu)
        {
            statystyki_meczu staty;
            Random           r = new Random();
            int czas           = r.Next(900, 2400);
            int killsred       = 0;
            int killsblue      = 0;

            List <int>    killerTeam = new List <int>();
            List <string> kolor      = new List <string>();
            List <int>    killers    = (from udzialy in udzial where udzialy.Rola.Equals("killer") select udzialy.idGracza).ToList();

            foreach (int i in killers)
            {
                killerTeam.Add((from z in zapis where z.idGracza == i select z.idDruzyny).Single());
            }
            foreach (int j in killerTeam)
            {
                kolor.Add((from d in druzyna where d.idDruzyny == j select d.Kolor_druzyny).Single());
            }
            foreach (string c in kolor)
            {
                if (c.Equals("red"))
                {
                    killsred++;
                }
                if (c.Equals("blue"))
                {
                    killsblue++;
                }
            }

            staty = new statystyki_meczu(idStatystykiMeczu, czas, idMeczu, killsred, killsblue);

            return(staty);
        }
Beispiel #3
0
        public static void play_match()
        {
            //test();
            var mDB = new BazyDB();

            int id_mecz_start;
            int druzyna_start;
            int udzial_start;
            int zapis_start;
            int zdarzenie_start;
            int statystyki_start;

            if (mDB.mecz.Any())
            {
                id_mecz_start = mDB.mecz.OrderByDescending(u => u.idMeczu).FirstOrDefault().idMeczu + 1;
            }
            else
            {
                id_mecz_start = 1;
            }

            if (mDB.druzyna.Any())
            {
                druzyna_start = mDB.druzyna.OrderByDescending(u => u.idDruzyny).FirstOrDefault().idDruzyny + 1;
            }
            else
            {
                druzyna_start = 1;
            }
            if (mDB.udzial.Any())
            {
                udzial_start = mDB.udzial.OrderByDescending(u => u.idUdzial).FirstOrDefault().idUdzial + 1;
            }
            else
            {
                udzial_start = 1;
            }
            if (mDB.zapis_do_druzyny.Any())
            {
                zapis_start = mDB.zapis_do_druzyny.OrderByDescending(u => u.idZapis_do_druzyny).FirstOrDefault().idZapis_do_druzyny + 1;
            }
            else
            {
                zapis_start = 1;
            }
            if (mDB.zdarzenie.Any())
            {
                zdarzenie_start = mDB.zdarzenie.OrderByDescending(u => u.idZdarzenie).FirstOrDefault().idZdarzenie + 1;
            }
            else
            {
                zdarzenie_start = 1;
            }
            if (mDB.statystyki_meczu.Any())
            {
                statystyki_start = mDB.statystyki_meczu.OrderByDescending(u => u.idStatystyki_Meczu).FirstOrDefault().idStatystyki_Meczu + 1;
            }
            else
            {
                statystyki_start = 1;
            }

            List <gracz> players4 = losowanieGraczy(mDB.gracz.ToList());


            List <druzyna> druzyny = setListDruzyna(druzyna_start, id_mecz_start);

            mecz match = StworzMecz(druzyny);

            List <zapis_do_druzyny> zapisy = StworzZapisy(players4, druzyny, zapis_start);

            List <zdarzenie> zdarzenia = setListZdarzenia(zdarzenie_start, id_mecz_start);

            List <udzial> udzialy = StworzUdzialy(udzial_start, zdarzenia, players4, zapisy);

            statystyki_meczu statystyki = setStatyMeczu(zdarzenia, udzialy, druzyny, zapisy, statystyki_start, id_mecz_start);



            DbContextTransaction trans = mDB.Database.BeginTransaction();

            try {
                mDB.mecz.Add(match);
                foreach (var item in druzyny)
                {
                    mDB.druzyna.Add(item);
                }



                foreach (var item in zapisy)
                {
                    mDB.zapis_do_druzyny.Add(item);
                }

                foreach (var item in zdarzenia)
                {
                    mDB.zdarzenie.Add(item);
                }

                foreach (var item in udzialy)
                {
                    mDB.udzial.Add(item);
                }

                mDB.statystyki_meczu.Add(statystyki);
                mDB.SaveChanges();
                trans.Commit();
            }
            catch (Exception e)
            {
                trans.Rollback();
            }
        }