Esempio n. 1
0
 /// <summary>
 /// Oyunu başlatır, oyun bitene kadar döngü devam eder. OyunForm ile eventler ile haberleşir. Her bir iterationda bütün şekiller ve tahta yeniden çizilir.
 /// </summary>
 public void Baslat()
 {
     OyunBasladiMi = true;
     OyunZamani.Restart();
     while (!OyunBittiMi)
     {
         if (!AktifSekil.HareketEttir(new Point(0, 1)))
         {
             Tahta.SekliDurdur(AktifSekil);
             if (Tahta.SatilariSil() > 0)
             {
                 Skor += 100;
             }
             if (Tahta.OyunBittiMi())
             {
                 Skor       += (int)TimeSpan.FromMilliseconds(OyunZamani.ElapsedMilliseconds).TotalSeconds;
                 OyunBittiMi = true;
                 OnOyunBitti();
                 break;
             }
             else
             {
                 AktifSekil = new Sekil(SekilOrnekleri[Rndm.Next(0, 7)], new Point(4, 0), Tahta);
             }
         }
         OnCiz();
         Thread.Sleep(OyunGecikmesi);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// Oyun için gerekli özellikleri oluşturur.
 /// </summary>
 public Oyun()
 {
     Tahta = new Tahta(10, 20);
     SekilleriOlustur();
     OyunGecikmesi = 250;
     AktifSekil    = new Sekil(SekilOrnekleri[Rndm.Next(0, 7)], new Point(4, 0), Tahta);
 }
Esempio n. 3
0
 /// <summary>
 /// Seçilen şekli, pozisyonu ve oyun tahtasini parametre alarak nesneye özelliklerine set eder.
 /// </summary>
 /// <param name="secilenSekil"></param>
 /// <param name="pozisyon"></param>
 /// <param name="oynTahtasi"></param>
 public Sekil(Sekil secilenSekil, Point pozisyon, Tahta oynTahtasi)
 {
     this.Tertomino = secilenSekil.Tertomino;
     this.Merkez    = new Nokta(secilenSekil.Merkez.X, secilenSekil.Merkez.Y);
     this.Bloklar   = new Nokta[4];
     for (int i = 0; i < 4; i++)
     {
         this.Bloklar[i]   = new Nokta();
         this.Bloklar[i].X = secilenSekil.Bloklar[i].X;
         this.Bloklar[i].Y = secilenSekil.Bloklar[i].Y;
     }
     this.Pozisyon   = new Point(pozisyon.X, pozisyon.Y);
     this.OynTahtasi = oynTahtasi;
 }