Пример #1
0
        //Porverava da li je na toj poziciji prazno polje
        public bool proveriPolje(int i, int j)
        {
            if ((i >= 0) && (i < velicina_matrice) && (j >= 0) && (j < velicina_matrice) && !((Polje)dugmici[i, j].Tag).Zastavica)
            {
                if (((Polje)dugmici[i, j].Tag).Vrednost.Equals(Vrednost_polja.PRAZNO_POLJE))
                {
                    if (dugmici[i, j].IsEnabled)
                    {
                        dugmici[i, j].IsEnabled = false;
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }


                if (((Polje)dugmici[i, j].Tag).Vrednost.Equals(Vrednost_polja.BROJ))
                {
                    int broj = ((Polje)dugmici[i, j].Tag).Broj_bombi_okolo;

                    Image slika_broj = new Image();
                    slika_broj.Source = Funkcionalnost.obojiBroj(this, broj).Source;

                    dugmici[i, j].Content   = slika_broj;
                    dugmici[i, j].IsEnabled = false;
                }
            }

            return(false);
        }
Пример #2
0
        //otvara sva polja
        public void otvoriSvaPolja()
        {
            for (int i = 0; i < velicina_matrice; i++)
            {
                for (int j = 0; j < velicina_matrice; j++)
                {
                    Polje polje = dugmici[i, j].Tag as Polje;

                    if (!polje.Zastavica)
                    {
                        if (polje.Vrednost == Vrednost_polja.PRAZNO_POLJE)
                        {
                            dugmici[i, j].IsEnabled = false;
                            dugmici[i, j].Style     = this.FindResource("dugmici_pritisnuto") as Style;
                        }

                        else if (polje.Vrednost == Vrednost_polja.BROJ)
                        {
                            Image img = new Image();
                            img.Source              = Funkcionalnost.obojiBroj(this, polje.Broj_bombi_okolo).Source;
                            dugmici[i, j].Content   = img;
                            dugmici[i, j].IsEnabled = false;
                            dugmici[i, j].Style     = this.FindResource("dugmici_pritisnuto") as Style;
                        }

                        else if (polje.Vrednost == Vrednost_polja.BOMBA)
                        {
                            Image img = new Image();
                            img.Source              = (this.FindResource("bomb") as Image).Source;
                            dugmici[i, j].Style     = this.FindResource("dugmici_pritisnuto") as Style;
                            dugmici[i, j].Content   = img;
                            dugmici[i, j].IsEnabled = false;
                        }
                    }
                    else
                    {
                        if (polje.Vrednost == Vrednost_polja.BOMBA)
                        {
                            dugmici[i, j].MouseRightButtonDown -= desniKlik;
                        }
                        else if (polje.Vrednost != Vrednost_polja.BOMBA)
                        {
                            Image img = new Image();
                            img.Source            = (this.FindResource("Xflag") as Image).Source;
                            dugmici[i, j].Content = img;
                            dugmici[i, j].MouseRightButtonDown -= desniKlik;
                        }
                    }
                }
            }
        }
Пример #3
0
        private void pritisnutoDugme(object sender, EventArgs e)
        {
            if (broj_pritisnutih_dugmica == 0)
            {
                tajmer.Start();
            }

            Button dugme         = (Button)sender;
            Polje  polje_dugmeta = (Polje)dugme.Tag;

            if (dugme.IsEnabled && !polje_dugmeta.Zastavica)
            {
                if (polje_dugmeta.Vrednost.Equals(Vrednost_polja.BOMBA))
                {
                    btnRestart.Content = (this.FindResource("sad") as Image);
                    otvoriSvaPolja();
                    dugme.Content = (this.FindResource("bomb_red") as Image);
                    tajmer.Stop();
                    return;
                }

                else if (polje_dugmeta.Vrednost.Equals(Vrednost_polja.BROJ))
                {
                    Image slika_broj = new Image();
                    slika_broj.Source = Funkcionalnost.obojiBroj(this, polje_dugmeta.Broj_bombi_okolo).Source;
                    dugme.Content     = slika_broj;
                    dugme.IsEnabled   = false;
                }

                else
                {
                    dugme.IsEnabled = false;
                    otvori_prazna_polja_okolo(dugme);
                }



                broj_pritisnutih_dugmica = 0;
                //broji pritisnute dugmice
                for (int i = 0; i < velicina_matrice; i++)
                {
                    for (int j = 0; j < velicina_matrice; j++)
                    {
                        if (!dugmici[i, j].IsEnabled)
                        {
                            dugmici[i, j].Style = this.FindResource("dugmici_pritisnuto") as Style;
                            broj_pritisnutih_dugmica++;
                        }
                    }
                }


                //ako su ostale samo bombe
                if ((velicina_matrice * velicina_matrice - broj_bombi) == broj_pritisnutih_dugmica)
                {
                    //Pokretanje animacije
                    btnRestart.BeginStoryboard(this.FindResource("animacija") as Storyboard);
                    tajmer.Stop();
                    trenutni_igrac.Broj_bodova = 1000 - brojac_vremena;


                    if (TopLista.dodajIgracaZaKategoriju(velicina_matrice, trenutni_igrac))
                    {
                        MessageBox.Show("Osvojili ste " + trenutni_igrac.Broj_bodova + " boda i nalazite se medju 10 najboljih igrača ");
                    }
                    else
                    {
                        MessageBox.Show("Osvojili ste " + trenutni_igrac.Broj_bodova + " boda ali niste uspeli da se plasirate medju 10 najboljih igrača ");
                    }

                    //postavlja zastavice na mestima gde se nalaze bombe kada su ostale samo bombe
                    for (int i = 0; i < velicina_matrice; i++)
                    {
                        for (int j = 0; j < velicina_matrice; j++)
                        {
                            if (((Polje)dugmici[i, j].Tag).Vrednost == Vrednost_polja.BOMBA)
                            {
                                ((Polje)dugmici[i, j].Tag).Zastavica = true;
                                dugmici[i, j].MouseRightButtonDown  -= desniKlik;
                                Image img = new Image();
                                img.Source            = (this.FindResource("flag") as Image).Source;
                                dugmici[i, j].Content = img;
                            }
                        }
                    }
                }
            }
        }