Ejemplo n.º 1
0
        public Igra(int velicina_matrice, int broj_bombi, Igrac igrac) : this()
        {
            this.trenutni_igrac   = igrac;
            this.velicina_matrice = velicina_matrice;
            this.broj_bombi       = broj_bombi;
            this.broj_zastavica   = 0;

            grid = new Grid();

            grid.Width  = velicina_matrice * 20 + 17;
            grid.Height = velicina_matrice * 20;

            Width  = grid.Width;
            Height = grid.Height + 90;

            //dinamicko formiranje grida
            for (int i = 0; i < velicina_matrice; i++)
            {
                ColumnDefinition cd = new ColumnDefinition();
                cd.Width = new GridLength(20);
                grid.ColumnDefinitions.Add(cd);

                RowDefinition rd = new RowDefinition();
                rd.Height = new GridLength(20);
                grid.RowDefinitions.Add(rd);
            }

            matrica.Children.Add(grid);


            dugmici = new Button[velicina_matrice, velicina_matrice];


            for (int i = 0; i < velicina_matrice; i++)
            {
                for (int j = 0; j < velicina_matrice; j++)
                {
                    dugmici[i, j]                       = new Button();
                    dugmici[i, j].Style                 = (this.FindResource("dugmici") as Style);
                    dugmici[i, j].Tag                   = new Polje(false, Vrednost_polja.PRAZNO_POLJE, i, j);
                    dugmici[i, j].IsEnabled             = true;
                    dugmici[i, j].Click                += pritisnutoDugme;
                    dugmici[i, j].MouseRightButtonDown += desniKlik;
                }
            }

            tbBombe.Text = broj_bombi + "";

            Funkcionalnost.dodavanjeBombi(dugmici, broj_bombi, velicina_matrice);
            Funkcionalnost.ispisBrojeva(dugmici, velicina_matrice);
            Funkcionalnost.dodajDugmice(dugmici, velicina_matrice, grid);


            //Tajmer
            tajmer          = new DispatcherTimer();
            tajmer.Tick    += new EventHandler(TimerProc);
            tajmer.Interval = new TimeSpan(0, 0, 1);

            tbVreme.Text = formirajVreme(0);
        }
Ejemplo n.º 2
0
        public static List <Igrac> sortirajListuIgraca(List <Igrac> igraci)
        {
            for (int i = 0; i < igraci.Count - 1; i++)
            {
                for (int j = i + 1; j < igraci.Count; j++)
                {
                    if (igraci[i].Broj_bodova < igraci[j].Broj_bodova)
                    {
                        Igrac pom = igraci[i];
                        igraci[i] = igraci[j];
                        igraci[j] = pom;
                    }
                }
            }

            return(igraci);
        }
Ejemplo n.º 3
0
        public static bool dodajIgracaZaKategoriju(int kategorija, Igrac igrac)
        {
            List <Igrac>    igraci = new List <Igrac>();
            BinaryFormatter bf     = new BinaryFormatter();

            string putanja = "";

            switch (kategorija)
            {
            case 10:
            {
                putanja = "Easy.bin";
                break;
            }

            case 12:
            {
                putanja = "Medium.bin";
                break;
            }

            case 14:
            {
                putanja = "Hard.bin";
                break;
            }
            }


            if (File.Exists(putanja))
            {
                List <Igrac> svi_igraci = sviIgraciZaKategoriju(kategorija);

                if (svi_igraci.Count < 10)
                {
                    svi_igraci.Add(igrac);
                    FileStream fs = File.Open(putanja, FileMode.Open, FileAccess.Write);
                    svi_igraci = sortirajListuIgraca(svi_igraci);
                    bf.Serialize(fs, svi_igraci);
                    fs.Close();
                    return(true);
                }

                if (svi_igraci[svi_igraci.Count - 1].Broj_bodova < igrac.Broj_bodova)
                {
                    svi_igraci.RemoveAt(svi_igraci.Count - 1);
                    svi_igraci.Add(igrac);
                    FileStream fs = File.Open(putanja, FileMode.Open, FileAccess.Write);
                    svi_igraci = sortirajListuIgraca(svi_igraci);
                    bf.Serialize(fs, svi_igraci);
                    fs.Close();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                FileStream fs = File.Create(putanja);
                bf.Serialize(fs, igrac);
                fs.Close();
                return(true);
            }



            return(false);
        }