Exemple #1
0
 private void Form1_Load(object sender, EventArgs e)
 {
     for (int i = 0; i < 12; i++)
     {
         nizFigura[i]           = new cFigura();
         nizFigura[i].TipFigure = i;
         //nizFigura[i].PostaviPoziciju(20 + ((i % 6) * 110), i >= 6 ? 180 : 70);
         nizPocPozicija[i].X = 15 + (i % 3) * 100;
         if (i < 3)
         {
             nizPocPozicija[i].Y = 30;
         }
         else if (i < 6)
         {
             nizPocPozicija[i].Y = 110;
         }
         else if (i < 9)
         {
             nizPocPozicija[i].Y = 190;
         }
         else
         {
             nizPocPozicija[i].Y = 270;
         }
         nizPocPozicija[0].X = 300;
         nizPocPozicija[0].Y = 15;
         nizFigura[i].PostaviPoziciju(nizPocPozicija[i].X, nizPocPozicija[i].Y);
     }
 }
Exemple #2
0
 public void upisiFiguru(cFigura figura, int selektovano)
 {
     for (int i = 0; i < 5; i++)
     {
         for (int j = 0; j < 5; j++)
         {
             mTable[tackaumartici.Y + i, tackaumartici.X + j] = selektovano + 1;
         }
     }
 }
Exemple #3
0
        public bool jelmozedastane(cFigura figura)
        {
            int maxsirina = -1, maxduzina = -1;

            for (int i = 0; i < 5; i++)
            {
                int duzina = 0;
                for (int j = 0; j < 5; j++)
                {
                    if (figura.mFigure[i, j] == 1)
                    {
                        duzina++;
                    }
                    else
                    {
                        maxduzina = Math.Max(maxduzina, duzina);
                        duzina    = 0;
                    }
                }
            }
            for (int j = 0; j < 5; j++)
            {
                int sirina = 0;
                for (int i = 0; i < 5; i++)
                {
                    if (figura.mFigure[j, i] == 1)
                    {
                        sirina++;
                    }
                    else
                    {
                        maxsirina = Math.Max(maxsirina, sirina);
                        sirina    = 0;
                    }
                }
            }

            if (8 - tackaumartici.X < maxsirina || 8 - tackaumartici.Y < maxduzina)
            {
                return(false);
            }
            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < 5; j++)
                {
                    if (figura.mFigure[i, j] == 1 && mTable[tackaumartici.Y + i, tackaumartici.X + j] != 0)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }
Exemple #4
0
 public void probajDaDas(cFigura figura, int x, int y, Graphics g, int selektovano)
 {
     if (!MisUTabli(x, y))
     {
         return;
     }
     if (!slobodno(figura, x, y))
     {
         return;
     }
     Ubaci(figura, g, selektovano);
 }
Exemple #5
0
 public void Ubaci(cFigura figura, Graphics g, int selektovano)
 {
     for (int i = 0; i < 5; i++)
     {
         for (int j = 0; j < 5; j++)
         {
             if (figura.mFigure[i, j] == 1)
             {
                 g.FillRectangle(boje[selektovano], pocX + mJ * dKvadratica, pocY + mI * dKvadratica, dKvadratica, dKvadratica);
             }
         }
     }
 }
Exemple #6
0
 public bool slobodno(cFigura figura, int x, int y)
 {
     for (int i = 0; i < 5; i++)
     {
         for (int j = 0; j < 5; j++)
         {
             if (figura.mFigure[i, j] == 1 && (mI + i > 7 || mJ + j > 7 || mTable[mI + i, mJ + j] != 0))
             {
                 return(false);
             }
         }
     }
     return(true);
 }