コード例 #1
0
ファイル: Tahta.cs プロジェクト: FIRATUCKAN/TYChess
        private void KareleriCiz()
        {
            for (int i = 0; i < 8; i++)
            {
                for (int j = 0; j < 8; j++)
                {
                    Kare k = new Kare((10 + i * 50), (10 + j * 50), 50, 50);
                    if (i % 2 == 0)
                    {
                        k.KareRengi = (j % 2 == 0) ? KareRengi.Siyah : KareRengi.Beyaz;
                    }
                    else
                    {
                        k.KareRengi = (j % 2 == 0) ? KareRengi.Beyaz : KareRengi.Siyah;
                    }
                    k.Click += Program.AktifOyun.KareClick;

                    Konum  konum  = new Konum(j + 1, i + 1);
                    Eleman eleman = Program.AktifOyun.ElemanBul(konum);
                    eleman.Kare = k;
                    k.ID        = eleman.ID;

                    this.Controls.Add(k);
                }
            }
        }
コード例 #2
0
        private void HareketYap(Konum kaynakKonum, Konum hedefKonum)
        {
            int tmpX = hedefKonum.X;
            int tmpY = hedefKonum.Y;

            hedefKonum.X = kaynakKonum.X;
            hedefKonum.Y = kaynakKonum.Y;

            kaynakKonum.X = tmpX;
            kaynakKonum.Y = tmpY;

            HedefTahta.Refresh();

            Eleman e = Program.AktifOyun.ElemanBul(new Konum(6, 7));

            e.Kare.Refresh();

            //List<Eleman> elemanlar = Program.AktifOyun.OyunHaritasi;

            //Eleman kaynak = OyunHaritasi.Where(e => e.Konum.X == kaynakKonum.X && e.Konum.Y == kaynakKonum.Y).First();
            //var hq = OyunHaritasi.Where(e => e.Konum.X == hedefKonum.X && e.Konum.Y == hedefKonum.Y);

            //if (hq.Any())
            //{
            //    //hedefte tas varsa burasi
            //}
            //else
            //{
            //    kaynak.Konum = hedefKonum;
            //}
        }
コード例 #3
0
        public void KareClick(object sender, EventArgs e)
        {
            Kare k = sender as Kare;

            //HedefTahta.AdresiLabelaYaz(k.Adres, k.Konum);
            //ilk tiklama
            if (!doMove)
            {
                //if (k.Tas != null)
                //    k.Tas.HareketAlaniniHesapla(k.Konum);
                kaynakKonum = k.Konum;
                doMove      = true;
                return;
            }

            hedefKonum = k.Konum;
            HareketYap(kaynakKonum, hedefKonum);
            OyunuTazele();
            doMove = false;
            //k.Tas = kaynakKare.Tas; //hedef karenin tasini kaynak karenin tasi yaptik
            //kaynakKare.Tas = null; //kaynak karede artik tas yok
        }
コード例 #4
0
ファイル: TahtaCizici.cs プロジェクト: FIRATUCKAN/TYChess
        public void Ciz()
        {
            //string adres = "NN";
            for (int i = 0; i < 8; i++)
            {
                for (int j = 0; j < 8; j++)
                {
                    string adres = ((char)(65 + j)).ToString() + (i + 1).ToString();
                    Konum  konum = new Konum(j + 1, i + 1);
                    Kare   k     = new Kare((10 + i * 50), (10 + j * 50), 50, 50);
                    k.Click += KareClick;
                    k.Click += Oyun.KareClick;

                    //if (Oyun.Baslangic.ContainsKey(adres))
                    //{
                    //    Tas t = Oyun.Baslangic[adres];
                    //    k.Tas = t;
                    //    //t.Kare = k;
                    //}

                    k.Adres = adres;
                    //k.Konum = konum;
                    k.AdresiGoster = Oyun.AdresleriGoster;

                    if (i % 2 == 0)
                    {
                        k.KareRengi = (j % 2 == 0) ? KareRengi.Siyah : KareRengi.Beyaz;
                    }
                    else
                    {
                        k.KareRengi = (j % 2 == 0) ? KareRengi.Beyaz : KareRengi.Siyah;
                    }

                    //Oyun.Kareler.Add(k);
                    Oyun.HedefTahta.KareEkle(k);
                }
            }
        }
コード例 #5
0
 public Eleman ElemanBul(Konum konum)
 {
     return(OyunHaritasi.Where(e => e.Konum.X == konum.X && e.Konum.Y == konum.Y).FirstOrDefault());
 }
コード例 #6
0
 private void TasEkle(Konum k, Tas t)
 {
     ElemanBul(k).Tas = t;
 }
コード例 #7
0
ファイル: Tahta.cs プロジェクト: FIRATUCKAN/TYChess
 public void AdresiLabelaYaz(string adres, Konum konum)
 {
     label1.Text = adres;
     label2.Text = string.Format("{0}, {1}", konum.X, konum.Y);
 }