Пример #1
0
        public static void AnaKod()
        {
            Renkler r = (Renkler)(new Random()).Next(0, 10);

            /* Rastgele bir renk seçimi yapacağımız için new Random() ile random klasından bir nesne
             * üretiriz ve next komutuyla yeni bir rastgele sayının üretilmesini sağlarız.*/

            /* switch (r) yazıp iki defa tab tuşuna bastığımızda otomatik olarak switch durumu oluşur*/

            switch (r)
            {
            case Renkler.Kirmizi:
                Console.WriteLine("Renk kirmizidir. ");
                break;

            case Renkler.Yeşil:
                Console.WriteLine("Renk yeşildir. ");
                break;

            case Renkler.Mavi:
                Console.WriteLine("Renk mavidir. ");
                break;

            default:
                Console.WriteLine("Renk bilinmiyor. ");
                break;
            }
        }
Пример #2
0
        void YeniKayit()
        {
            var cont = (from s in db.Renklers
                        where s.Renk == txtGrupAdi.Text.ToLower()
                        select s).ToList();

            if (cont.Count == 0)
            {
                if (txtGrupAdi.Text != "")
                {
                    Renkler rnk = new Renkler();
                    rnk.Renk = "*" + txtGrupAdi.Text;
                    db.Renklers.Add(rnk);
                    db.SaveChanges();
                    MessageBox.Show("Kayıt İşlemi Başarılı.");
                    Listele();
                    Temizle();
                }
                else
                {
                    MessageBox.Show("Grup Adı Boş Olamaz !!");
                }
            }
            else
            {
                MessageBox.Show("Grup adı daha önce girilmiş !!");
            }
        }
Пример #3
0
        public static void TasOlustur(Tas[,] sTaslari, int x, int y, Renkler renk, Taslar tip)
        {
            switch (tip)
            {
            case Taslar.Piyon:
                sTaslari[x, y] = new Piyon(new Point(x, y), Taslar.Piyon, renk);
                break;

            case Taslar.Kale:
                sTaslari[x, y] = new Kale(new Point(x, y), Taslar.Kale, renk);
                break;

            case Taslar.At:
                sTaslari[x, y] = new At(new Point(x, y), Taslar.At, renk);
                break;

            case Taslar.Fil:
                sTaslari[x, y] = new Fil(new Point(x, y), Taslar.Fil, renk);
                break;

            case Taslar.Sah:
                sTaslari[x, y] = new Sah(new Point(x, y), Taslar.Sah, renk);
                break;

            case Taslar.Vezir:
                sTaslari[x, y] = new Vezir(new Point(x, y), Taslar.Vezir, renk);
                break;
            }
        }
Пример #4
0
        private void YeniKayit()
        {
            var cont = (from k in db.Renklers
                        where k.Renk.ToLower() == txtRenk.Text.ToLower()
                        select k).ToList();

            if (cont.Count == 0)
            {
                if (txtRenk.Text != "")
                {
                    Renkler rnk = new Renkler();
                    rnk.Renk = txtRenk.Text;
                    db.Renklers.Add(rnk);
                    db.SaveChanges();
                    MessageBox.Show("Renk başarıyla eklenmiştir.");
                    Listele();
                    Temizle();
                }
                else
                {
                    MessageBox.Show("Renk boş geçilemez.");
                }
            }
            else
            {
                MessageBox.Show("Renk daha önce girilmiş.");
            }
        }
Пример #5
0
 public Urun(int ID, string Urun, decimal Fiyat, Renkler Renk)
 {
     _id = ID;
     _urunAdi = Urun;
     _urunFiyati = Fiyat;
     _urunRengi = Renk;
 }
Пример #6
0
        public ActionResult Delete(int?id)
        {
            Renkler renk = db.renkler.Find(id);

            db.renkler.Remove(renk);
            db.SaveChanges();
            return(RedirectToAction("RenklerIndex"));
        }
Пример #7
0
        private void Guncelle()
        {
            Renkler rnk = db.Renklers.First(x => x.Id == secimId);

            rnk.Renk = txtRenk.Text;
            db.SaveChanges();
            MessageBox.Show("Renk başarıyla güncellendi");
            Listele();
            Temizle();
        }
Пример #8
0
        void Guncelle()
        {
            Renkler renk = db.Renklers.First(x => x.Id == secimId);

            renk.Renk = "*" + txtGrupAdi.Text;
            db.SaveChanges();
            MessageBox.Show("Güncelleme Başarılı..");
            Listele();
            Temizle();
        }
Пример #9
0
 public Araba(IskeletOlusturucu Iskelet, MotorOlusturucu Motor, Renkler Renk)
 {
     Console.WriteLine($"Iskelet x = {Iskelet.x}");
     Console.WriteLine($"Iskelet y = {Iskelet.y}");
     Console.WriteLine($"Iskelet z = {Iskelet.z}");
     Console.WriteLine($"Motor x = {Motor.x}");
     Console.WriteLine($"Motor y = {Motor.y}");
     Console.WriteLine($"Motor z = {Motor.z}");
     Console.WriteLine($"Renk = {Renk}");
 }
Пример #10
0
        public Tas(Point p, Taslar tip, Renkler renk)
        {
            Yer = p;
            tasTipi = tip;
            Renk = renk;

            try
            {
                if (Renk == Renkler.Beyaz)
                {
                    if (tasTipi == Taslar.Piyon)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bPiyon.gif");

                    if (tasTipi == Taslar.Kale)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bKale.gif");

                    if (tasTipi == Taslar.At)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bAt.gif");

                    if (tasTipi == Taslar.Fil)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bFil.gif");

                    if (tasTipi == Taslar.Vezir)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bVezir.gif");

                    if (tasTipi == Taslar.Sah)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bSah.gif");
                }
                if (Renk == Renkler.Siyah)
                {
                    if (tasTipi == Taslar.Piyon)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sPiyon.gif");

                    if (tasTipi == Taslar.Kale)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sKale.gif");

                    if (tasTipi == Taslar.At)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sAt.gif");

                    if (tasTipi == Taslar.Fil)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sFil.gif");

                    if (tasTipi == Taslar.Vezir)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sVezir.gif");

                    if (tasTipi == Taslar.Sah)
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sSah.gif");
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Source);
            }
        }
Пример #11
0
        public static void LogHamle(int i, IntPtr hwdnsLstBox, Renkler Oyuncu, Taslar tasTipi, int x1, int y1, int x2, int y2, String Hamle)
        {
            String tasBasHarf = tasTipi.ToString().Substring(0, 1);
            lvHamleler.Items.Add(Oyuncu.ToString());
            lvHamleler.Items[i].SubItems.Add(tasBasHarf);

            undoHamle.Push(Hamle); // Log daki "Þah", "Mat", "bRok", "kRok" ve "" deðerlerinin(Hamle deðerlerinin) tutulmasý...

            Hamle = (Hamle!="") ? (" - " + Hamle) : ("");
            lvHamleler.Items[i].SubItems.Add(Harfler[x1] + Rakamlar[y1] + "-" + Harfler[x2] + Rakamlar[y2] + Hamle);
        }
Пример #12
0
        public static void LogHamle(int i, IntPtr hwdnsLstBox, Renkler Oyuncu, Taslar tasTipi, int x1, int y1, int x2, int y2, String Hamle)
        {
            String tasBasHarf = tasTipi.ToString().Substring(0, 1);

            lvHamleler.Items.Add(Oyuncu.ToString());
            lvHamleler.Items[i].SubItems.Add(tasBasHarf);

            undoHamle.Push(Hamle); // Log daki "Þah", "Mat", "bRok", "kRok" ve "" deðerlerinin(Hamle deðerlerinin) tutulmasý...

            Hamle = (Hamle != "") ? (" - " + Hamle) : ("");
            lvHamleler.Items[i].SubItems.Add(Harfler[x1] + Rakamlar[y1] + "-" + Harfler[x2] + Rakamlar[y2] + Hamle);
        }
Пример #13
0
        public ActionResult Create(Renkler image)
        {
            string filename  = Path.GetFileNameWithoutExtension(image.Imagefile.FileName);
            string extension = Path.GetExtension(image.Imagefile.FileName);

            filename        = filename + DateTime.Now.ToString("yymmssfff") + extension;
            image.RenkResim = "/Media/renk/" + filename;
            filename        = Path.Combine(Server.MapPath("/Media/renk/"), filename);
            image.Imagefile.SaveAs(filename);
            db.renkler.Add(image);
            db.SaveChanges();
            ModelState.Clear();
            return(View());
        }
Пример #14
0
        private void GostergeSec()
        {
            Renkler _randomRenk = (Renkler)rnd.Next(0, 4);
            int     _randomSayi = rnd.Next(1, 14);

            Gosterge = new Tas(_randomRenk, _randomSayi, TasTipi.normal);
            _okey    = new Tas(_randomRenk, _randomSayi + 1, TasTipi.normal);

            foreach (Tas _sahteOkey in Taslar.Where(x => x.Tip == TasTipi.sahteOkey)) //sahte okeylerin icinde don
            {
                _sahteOkey.Sayi = Gosterge.Sayi;
                _sahteOkey.Renk = Gosterge.Renk;
            }

            foreach (Tas _okey in Taslar.Where(x => x.Sayi == _okey.Sayi && x.Renk == _okey.Renk))
            {
                _okey.Tip = TasTipi.okey;
            }
        }
Пример #15
0
        public static void Swicth()
        {
            Renkler rastgele = (Renkler)(new Random()).Next(0, 6);

            switch (rastgele)
            {
            case Renkler.Sarı:
                Console.WriteLine("Rastgele renk : " + " " + Renkler.Sarı);
                break;

            case Renkler.Turucu:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Turucu);
                break;

            case Renkler.Mavi:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Mavi);
                break;

            case Renkler.Pembe:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Pembe);
                break;

            case Renkler.Mor:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Mor);
                break;

            case Renkler.Kırmızı:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Kırmızı);
                break;

            case Renkler.Turkuaz:
                Console.WriteLine("Rastgele renk :" + " " + Renkler.Turkuaz);
                break;

            default:
                Console.WriteLine("Renk yok");
                break;
            }
            Console.ReadLine();
        }
Пример #16
0
        private void GetTaslar()
        {
            int        ToplamTasSayisi = 106;
            List <Tas> _taslar         = new List <Tas>(ToplamTasSayisi);

            for (int tasTekrarSayaci = 0; tasTekrarSayaci < 2; tasTekrarSayaci++)
            {
                for (int renkSayisi = 0; renkSayisi < 4; renkSayisi++)
                {
                    Renkler _renk = (Renkler)renkSayisi;
                    for (int tasSayisi = 0; tasSayisi < 13; tasSayisi++)
                    {
                        _taslar.Add(new Tas(_renk, tasSayisi + 1, TasTipi.normal));
                    }
                }
                _taslar.Add(new Tas(Renkler.kirmizi, -1, TasTipi.sahteOkey));
            }

            _taslar.Shuffle();

            Taslar = _taslar;
        }
Пример #17
0
 public static void TasOlustur(Tas[,] sTaslari, int x, int y, Renkler renk, Taslar tip)
 {
     switch (tip)
     {
         case Taslar.Piyon :
             sTaslari[x, y] = new Piyon(new Point(x, y), Taslar.Piyon, renk);
             break;
         case Taslar.Kale :
             sTaslari[x, y] = new Kale(new Point(x, y), Taslar.Kale, renk);
             break;
         case Taslar.At :
             sTaslari[x, y] = new At(new Point(x, y), Taslar.At, renk);
             break;
         case Taslar.Fil :
             sTaslari[x, y] = new Fil(new Point(x, y), Taslar.Fil, renk);
             break;
         case Taslar.Sah :
             sTaslari[x, y] = new Sah(new Point(x, y), Taslar.Sah, renk);
             break;
         case Taslar.Vezir :
             sTaslari[x, y] = new Vezir(new Point(x, y), Taslar.Vezir, renk);
             break;
     } 
 }
Пример #18
0
 public Araba Olustur(Renkler renk)
 {
     return(new Araba(Iskelet, Motor, renk));
 }
Пример #19
0
 public Piyon(Point p, Taslar tas, Renkler renk) : base(p, tas, renk)
 {
 }
Пример #20
0
 public Piyon(Point p, Taslar tas, Renkler renk) : base(p, tas, renk)
 {
 }
Пример #21
0
 public robotKol Olustur(Renkler renk)
 {
     return(new robotKol(Iskelet, Motor, renk));
 }
Пример #22
0
 public Vezir(Point p, Taslar tas, Renkler renk) : base(p, tas, renk)
 {
 }
Пример #23
0
        public void HamleYap(int x1, int y1, int x2, int y2)
        {
            Point sahYeri;
            Tas temp=null;

            satrancTaslari[x1, y1].YolGizle(g);
            satrancTaslari[x1, y1].Gizle(g); // Taþý Sil.

            Tasi(x1, y1, x2, y2); // Taþý götür...

                sahYeri = sahBul();   // Oyuncunun þahýnýn yerini bul...
                if (sahCekildi(sahYeri)) // Diðer taþlar tarafýndan þah çekliliyor mu?
                {
                    if (alinanTas != null) // Taþ alýnmýþsa sakla (Tasi metodunda)
                    {
                        temp = alinanTas;
                    }

                    Tasi(x2, y2, x1, y1); // Mat olacak, taþý eski yerine getir...
                    satrancTaslari[x1, y1].Goster(g); // Taþý Göster
                    satrancTaslari[x1, y1].Hamleler.Clear();

                    if (temp != null) // Alýnan taþý da yerine koy
                    {
                        satrancTaslari[x2, y2] = temp;
                        satrancTaslari[x2, y2].Goster(g);
                        temp = null;
                    }

                    oyunAlani.TaslarGoster(satrancTaslari, g); // Refresh
                    Secim = false; // Oyuncu deðiþmeden yeni hamle yapýlsýn
                    return;
                } 

            // Piyon'un Vezir'e dönüþmesi
            if (satrancTaslari[x2, y2].tasTipi == Taslar.Piyon)
            {
                if (Oyuncu == Renkler.Beyaz && satrancTaslari[x2, y2].Yer.Y == 0)
                {
                    satrancTaslari[x2, y2] = new Vezir(new Point(x2,y2), Taslar.Vezir, Renkler.Beyaz);
                }
                else if (Oyuncu == Renkler.Beyaz && satrancTaslari[x2, y2].Yer.Y == 7)
                {
                    satrancTaslari[x2, y2] = new Vezir(new Point(x2,y2), Taslar.Vezir, Renkler.Siyah);
                }
            }

            // Undo'dan sonra kullanýcý hamle yaparsa redo dan hamle çýkar
            if (UndoRedo.redoNoktalar.Count > 0)
            {
                UndoRedo.redoNoktalar.Pop();
                UndoRedo.redoNoktalar.Pop();
                UndoRedo.redoTaslar.Pop();
                UndoRedo.redoTaslar.Pop();
            }

            UndoRedo.undoNoktalar.Push(new Point(x1, y1));
            UndoRedo.undoNoktalar.Push(new Point(x2, y2));
            UndoRedo.undoTaslar.Push(satrancTaslari[x2, y2]);

            if (alinanTas != null) // Alýnan taþ varsa yýðýna at
            {
                UndoRedo.undoTaslar.Push(alinanTas);
                alinanTas.Gizle(g);
            }
            else
            {
                UndoRedo.undoTaslar.Push(null); // Alýnan taþ yoksa null bas
            }

            satrancTaslari[x2, y2].Goster(g); // Taþý Göster
            satrancTaslari[x2, y2].Hamleler.Clear();
            oyunAlani.TaslarGoster(satrancTaslari, g); // Refresh..

            if (Sira == Renkler.Beyaz) // Oyuncuyu deðiþtir
                Sira = Renkler.Siyah;
            else
                Sira = Renkler.Beyaz;

            /*Þah-Mat Kontrolü...
            Sýra diðer oyuncuya geçti ama daha önce Diðer Oyuncunun þahýnýn yerini bul...*/
            sahYeri = sahBul();
            if (sahCekildi(sahYeri)) // Yapýlan hamle sonucunda Diðer oyuncuya þah çekildi mi?
            {
                if (matOldu()) // Þah çekildiyse mat oldu mu?
                {
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2,"Mat");
                    MessageBox.Show(Sira.ToString() + " Mat oldu. Oyunu " + Oyuncu.ToString() + " kazandý", "Oyun Bitti", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    hamleSayisi++;
                    return;
                }
                else
                {
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2,"Þah");
                    hamleSayisi++;
                    return;
                }
            }

            if (satrancTaslari[x2, y2].tasTipi == Taslar.Sah) // Þah taþýndýysa Rok Yaptý Mý?
            {
                if (x2 == x1 - 2)
                {
                    Rok(x2, y2, "bRok");
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "bRok");
                    hamleSayisi++;
                    return;
                }
                else if (x2 == x1 + 2)
                {
                    Rok(x2, y2, "kRok");
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "kRok");
                    hamleSayisi++;
                    return;
                }
            }

            Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2,""); // Normal Hamle
            hamleSayisi++;
        }
Пример #24
0
        public void Play(int mX, int mY)
        {
            Tas secilenTas;
            int i;
            Hamle = false;
            secilenTas = satrancTaslari[mX, mY];

            if (Secim)
            {
                for (i = 0; i < satrancTaslari[x1, y1].Hamleler.Count; i += 2)
                {
                    if ((int)satrancTaslari[x1, y1].Hamleler[i] == mX && (int)satrancTaslari[x1, y1].Hamleler[i + 1] == mY)
                    {
                        Hamle = true; // Hamle yapabilir mi?
                    }
                }

                if (Hamle)
                {
                    HamleYap(x1, y1, mX, mY);
                    x1 = -1; y1 = -1; // Seçili taþ yok
                    Secim = false;  // Yeni seçim yapýlsýn.
                    return;
                }
            }

            if (secilenTas != null) // Herhangi bir taþ seçilmiþse
            {
                if (secilenTas.Renk == Renkler.Beyaz) // Hangi oyuncu olduðunu belirle
                    Oyuncu = Renkler.Beyaz;
                else
                    Oyuncu = Renkler.Siyah;

                if (Sira == Oyuncu)
                {
                    Secim = true; // Seçim yapýldý. Hamle yapmaya hazýrýz...

                    if (x1 >= 0 && y1 >= 0) // Daha önce oyuncunun taþý seçilmiþse, Yolunu temizlemek için...
                    {
                        satrancTaslari[x1, y1].YolGizle(g);
                        satrancTaslari[x1, y1].Gizle(g); // Daha önce ayný renkte taþ seçildiyse seçimi gizle...
                        oyunAlani.TaslarGoster(satrancTaslari, g);
                    }

                    satrancTaslari[mX, mY].HamleHesapla(satrancTaslari); // Gidebileceði yerleri diziye doldur...
                    satrancTaslari[mX, mY].SecimGoster(g); // yeni seçilen taþýn seçimini göster
                    satrancTaslari[mX, mY].YolGoster(satrancTaslari, g);
                    oyunAlani.TaslarGoster(satrancTaslari, g);

                    x1 = mX; // Taþýn hamleden öncekini yerini tut...
                    y1 = mY;
                }
                else
                {
                    if (x1 >= 0 && y1 >= 0) // Yolu temizlemek için(Kendi taþýný seçtikenten sonra rakip taþý seçerse)
                    {
                        satrancTaslari[x1, y1].YolGizle(g);
                        satrancTaslari[x1, y1].Gizle(g);
                        oyunAlani.TaslarGoster(satrancTaslari, g);
                    }

                    Secim = false;
                }
            }
        }
Пример #25
0
 public Kare(Renkler renk, Konum konum)
 {
     Renk     = renk;
     Lokasyon = konum;
 }
Пример #26
0
 public Vezir(Point p, Taslar tas, Renkler renk) : base(p, tas, renk)
 {
 }
Пример #27
0
 public Fil(Point p, Taslar tas, Renkler renk)
     : base(p, tas, renk)
 {
 }
Пример #28
0
        public void HamleYap(int x1, int y1, int x2, int y2)
        {
            Point sahYeri;
            Tas   temp = null;

            satrancTaslari[x1, y1].YolGizle(g);
            satrancTaslari[x1, y1].Gizle(g); // Taþý Sil.

            Tasi(x1, y1, x2, y2);            // Taþý götür...

            sahYeri = sahBul();              // Oyuncunun þahýnýn yerini bul...
            if (sahCekildi(sahYeri))         // Diðer taþlar tarafýndan þah çekliliyor mu?
            {
                if (alinanTas != null)       // Taþ alýnmýþsa sakla (Tasi metodunda)
                {
                    temp = alinanTas;
                }

                Tasi(x2, y2, x1, y1);             // Mat olacak, taþý eski yerine getir...
                satrancTaslari[x1, y1].Goster(g); // Taþý Göster
                satrancTaslari[x1, y1].Hamleler.Clear();

                if (temp != null)     // Alýnan taþý da yerine koy
                {
                    satrancTaslari[x2, y2] = temp;
                    satrancTaslari[x2, y2].Goster(g);
                    temp = null;
                }

                oyunAlani.TaslarGoster(satrancTaslari, g); // Refresh
                Secim = false;                             // Oyuncu deðiþmeden yeni hamle yapýlsýn
                return;
            }

            // Piyon'un Vezir'e dönüþmesi
            if (satrancTaslari[x2, y2].tasTipi == Taslar.Piyon)
            {
                if (Oyuncu == Renkler.Beyaz && satrancTaslari[x2, y2].Yer.Y == 0)
                {
                    satrancTaslari[x2, y2] = new Vezir(new Point(x2, y2), Taslar.Vezir, Renkler.Beyaz);
                }
                else if (Oyuncu == Renkler.Beyaz && satrancTaslari[x2, y2].Yer.Y == 7)
                {
                    satrancTaslari[x2, y2] = new Vezir(new Point(x2, y2), Taslar.Vezir, Renkler.Siyah);
                }
            }

            // Undo'dan sonra kullanýcý hamle yaparsa redo dan hamle çýkar
            if (UndoRedo.redoNoktalar.Count > 0)
            {
                UndoRedo.redoNoktalar.Pop();
                UndoRedo.redoNoktalar.Pop();
                UndoRedo.redoTaslar.Pop();
                UndoRedo.redoTaslar.Pop();
            }

            UndoRedo.undoNoktalar.Push(new Point(x1, y1));
            UndoRedo.undoNoktalar.Push(new Point(x2, y2));
            UndoRedo.undoTaslar.Push(satrancTaslari[x2, y2]);

            if (alinanTas != null) // Alýnan taþ varsa yýðýna at
            {
                UndoRedo.undoTaslar.Push(alinanTas);
                alinanTas.Gizle(g);
            }
            else
            {
                UndoRedo.undoTaslar.Push(null); // Alýnan taþ yoksa null bas
            }

            satrancTaslari[x2, y2].Goster(g);          // Taþý Göster
            satrancTaslari[x2, y2].Hamleler.Clear();
            oyunAlani.TaslarGoster(satrancTaslari, g); // Refresh..

            if (Sira == Renkler.Beyaz)                 // Oyuncuyu deðiþtir
            {
                Sira = Renkler.Siyah;
            }
            else
            {
                Sira = Renkler.Beyaz;
            }

            /*Þah-Mat Kontrolü...
             * Sýra diðer oyuncuya geçti ama daha önce Diðer Oyuncunun þahýnýn yerini bul...*/
            sahYeri = sahBul();
            if (sahCekildi(sahYeri)) // Yapýlan hamle sonucunda Diðer oyuncuya þah çekildi mi?
            {
                if (matOldu())       // Þah çekildiyse mat oldu mu?
                {
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "Mat");
                    MessageBox.Show(Sira.ToString() + " Mat oldu. Oyunu " + Oyuncu.ToString() + " kazandý", "Oyun Bitti", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    hamleSayisi++;
                    return;
                }
                else
                {
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "Þah");
                    hamleSayisi++;
                    return;
                }
            }

            if (satrancTaslari[x2, y2].tasTipi == Taslar.Sah) // Þah taþýndýysa Rok Yaptý Mý?
            {
                if (x2 == x1 - 2)
                {
                    Rok(x2, y2, "bRok");
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "bRok");
                    hamleSayisi++;
                    return;
                }
                else if (x2 == x1 + 2)
                {
                    Rok(x2, y2, "kRok");
                    Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, "kRok");
                    hamleSayisi++;
                    return;
                }
            }

            Log.LogHamle(hamleSayisi, handleLView, Oyuncu, satrancTaslari[x2, y2].tasTipi, x1, y1, x2, y2, ""); // Normal Hamle
            hamleSayisi++;
        }
Пример #29
0
        public Tas(Point p, Taslar tip, Renkler renk)
        {
            Yer     = p;
            tasTipi = tip;
            Renk    = renk;

            try
            {
                if (Renk == Renkler.Beyaz)
                {
                    if (tasTipi == Taslar.Piyon)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bPiyon.gif");
                    }

                    if (tasTipi == Taslar.Kale)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bKale.gif");
                    }

                    if (tasTipi == Taslar.At)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bAt.gif");
                    }

                    if (tasTipi == Taslar.Fil)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bFil.gif");
                    }

                    if (tasTipi == Taslar.Vezir)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bVezir.gif");
                    }

                    if (tasTipi == Taslar.Sah)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\bSah.gif");
                    }
                }
                if (Renk == Renkler.Siyah)
                {
                    if (tasTipi == Taslar.Piyon)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sPiyon.gif");
                    }

                    if (tasTipi == Taslar.Kale)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sKale.gif");
                    }

                    if (tasTipi == Taslar.At)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sAt.gif");
                    }

                    if (tasTipi == Taslar.Fil)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sFil.gif");
                    }

                    if (tasTipi == Taslar.Vezir)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sVezir.gif");
                    }

                    if (tasTipi == Taslar.Sah)
                    {
                        Resim = Image.FromFile(oyunKlasoru + "\\images\\sSah.gif");
                    }
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Source);
            }
        }
Пример #30
0
        public void Play(int mX, int mY)
        {
            Tas secilenTas;
            int i;

            Hamle      = false;
            secilenTas = satrancTaslari[mX, mY];

            if (Secim)
            {
                for (i = 0; i < satrancTaslari[x1, y1].Hamleler.Count; i += 2)
                {
                    if ((int)satrancTaslari[x1, y1].Hamleler[i] == mX && (int)satrancTaslari[x1, y1].Hamleler[i + 1] == mY)
                    {
                        Hamle = true; // Hamle yapabilir mi?
                    }
                }

                if (Hamle)
                {
                    HamleYap(x1, y1, mX, mY);
                    x1    = -1; y1 = -1; // Seçili taþ yok
                    Secim = false;       // Yeni seçim yapýlsýn.
                    return;
                }
            }

            if (secilenTas != null)                   // Herhangi bir taþ seçilmiþse
            {
                if (secilenTas.Renk == Renkler.Beyaz) // Hangi oyuncu olduðunu belirle
                {
                    Oyuncu = Renkler.Beyaz;
                }
                else
                {
                    Oyuncu = Renkler.Siyah;
                }

                if (Sira == Oyuncu)
                {
                    Secim = true;           // Seçim yapýldý. Hamle yapmaya hazýrýz...

                    if (x1 >= 0 && y1 >= 0) // Daha önce oyuncunun taþý seçilmiþse, Yolunu temizlemek için...
                    {
                        satrancTaslari[x1, y1].YolGizle(g);
                        satrancTaslari[x1, y1].Gizle(g); // Daha önce ayný renkte taþ seçildiyse seçimi gizle...
                        oyunAlani.TaslarGoster(satrancTaslari, g);
                    }

                    satrancTaslari[mX, mY].HamleHesapla(satrancTaslari); // Gidebileceði yerleri diziye doldur...
                    satrancTaslari[mX, mY].SecimGoster(g);               // yeni seçilen taþýn seçimini göster
                    satrancTaslari[mX, mY].YolGoster(satrancTaslari, g);
                    oyunAlani.TaslarGoster(satrancTaslari, g);

                    x1 = mX; // Taþýn hamleden öncekini yerini tut...
                    y1 = mY;
                }
                else
                {
                    if (x1 >= 0 && y1 >= 0) // Yolu temizlemek için(Kendi taþýný seçtikenten sonra rakip taþý seçerse)
                    {
                        satrancTaslari[x1, y1].YolGizle(g);
                        satrancTaslari[x1, y1].Gizle(g);
                        oyunAlani.TaslarGoster(satrancTaslari, g);
                    }

                    Secim = false;
                }
            }
        }
Пример #31
0
 public Fil(Point p, Taslar tas, Renkler renk)
     : base(p, tas, renk)
 {
 }
Пример #32
0
 public Tas(Renkler renk, int sayi, TasTipi tip)
 {
     Renk = renk;
     Sayi = sayi;
     Tip  = tip;
 }