private void _MouseDown(object sender, MouseEventArgs e) { tas t = (tas)sender; for (int i = 0; i < 2; i++) { for (int j = 0; j < 15; j++) { if (konumlar[i, j].KonumTas != null) { if (konumlar[i, j].KonumTas.Name == t.Name) { secilenTas = konumlar[i, j].KonumTas; konumlar[i, j].KonumTas = null; break; } } } } kPanel = (Panel)sender; konum = e.Location; surukleme = true; kPanel.Cursor = Cursors.SizeAll; // MessageBox.Show("" + t.Sayisi + " renk " + t.Rengi); // mousedown eventi }
public void tasat(tas tas, oyuncu oyuncu, k_oyuncu koyuncu) { // taş atma oyuncu.taslari.Remove(tas); koyuncu.taslari.Add(tas); }
public float kontrol2sira(tas tas, oyuncu oyuncu)// sol taraftaki taşın elimdeki taşlara sıralı uyumu olup olmadığını kontrol eder { int V = ara(oyuncu, new tas(tas.Rengi, tas.Sayisi)); int k = ara(oyuncu, new tas(tas.Rengi, tas.Sayisi + 1)); int h = ara(oyuncu, new tas(tas.Rengi, tas.Sayisi - 1)); int k2 = ara(oyuncu, new tas(tas.Rengi, tas.Sayisi + 2)); int h2 = ara(oyuncu, new tas(tas.Rengi, tas.Sayisi - 2)); if (k == 1 & h == 1 & k2 == 1 & h2 == 1 & V != 1) { esik += 0.80f; } else if (k == 1 & h == 1 & V != 0) { esik += 0.55f; } else if (k == 1 & k2 == 1) { esik += 0.55f; } else if (h == 1 & h2 == 1) { esik += 0.55f; } else if (k == 1 || h == 1) { esik += 0.15f; } return(esik); }
public void taskontrol()// taşların sıralıya uyumuna göre eşik değeri verir { for (int i = 0; i < oyuncu.taslari.Count - 1; i++) { tas kontrol1; tas kontrol2; kontrol1 = ara(oyuncu, new tas(oyuncu.taslari[i].Rengi, oyuncu.taslari[i].Sayisi + 1)); kontrol2 = ara(oyuncu, new tas(oyuncu.taslari[i].Rengi, oyuncu.taslari[i].Sayisi - 1)); tas kontrol11 = ara(oyuncu, new tas(oyuncu.taslari[i].Rengi, oyuncu.taslari[i].Sayisi + 2)); tas kontrol22 = ara(oyuncu, new tas(oyuncu.taslari[i].Rengi, oyuncu.taslari[i].Sayisi - -2)); if (kontrol1.Rengi != "o" & kontrol2.Rengi != "o") { if (uyumdaara(oyuncu, oyuncu.taslari[i]) == 0) { oyuncu.uyumdakitaslari.Add(oyuncu.taslari[i]); } if (uyumdaara(oyuncu, kontrol1) == 0) { oyuncu.uyumdakitaslari.Add(kontrol1); } if (uyumdaara(oyuncu, kontrol2) == 0) { oyuncu.uyumdakitaslari.Add(kontrol2); } } else if (kontrol1.Rengi != "o" & kontrol11.Rengi != "o") { if (uyumdaara(oyuncu, oyuncu.taslari[i]) == 0) { oyuncu.uyumdakitaslari.Add(oyuncu.taslari[i]); } if (uyumdaara(oyuncu, kontrol1) == 0) { oyuncu.uyumdakitaslari.Add(kontrol1); } if (uyumdaara(oyuncu, kontrol11) == 0) { oyuncu.uyumdakitaslari.Add(kontrol11); } } else if (kontrol2.Rengi != "o" & kontrol22.Rengi != "o") { if (uyumdaara(oyuncu, oyuncu.taslari[i]) == 0) { oyuncu.uyumdakitaslari.Add(oyuncu.taslari[i]); } if (uyumdaara(oyuncu, kontrol2) == 0) { oyuncu.uyumdakitaslari.Add(kontrol2); } if (uyumdaara(oyuncu, kontrol2) == 0) { oyuncu.uyumdakitaslari.Add(kontrol22); } } } string b = ""; }
public int yararmikontrol(tas tas, oyuncu oyuncu)// sistem oyuncuları için eline yarıyor mu diye kontrol etmek { float t = kontrol1renk(tas, oyuncu); float f = kontrol2sira(tas, oyuncu); if (t > 0.5 || f > 0.5) { return(1); } return(0); }
private void _MouseMove(object sender, MouseEventArgs e) { if (ortanca.taslari.Count == 0) { MessageBox.Show("Ortanın Taşları Bitti"); this.Close(); } if (surukleme) { tas t = (tas)sender; t.Left = e.X + t.Left - (konum.X); t.Top = e.Y + t.Top - (konum.Y); if (sirabende = true & tascekebilir == true & t.Left > 550 & t.Top < 300) { MessageBox.Show("Taş Çekmelisin"); t.Left = 550; t.Top = 390; } if (sirabende = true & tascekebilir == false & t.Left > 600 & t.Top < 290) { ben.tasat(t, ben, sagalt); surukleme = false; sirabende = false; tascekebilir = false; t.Left = 600; t.Top = 250; kosacakmi = 1; } else if (sirabende = true & tascekebilir == true & t == ortanca.taslari[ortanca.taslari.Count - 1]) { ortanca.taslari[ortanca.taslari.Count - 1].tasGosterilecekMi = true; ben.tascek(t, ortanca, ben); // t.tasGosterilecekMi = true; tascekebilir = false; sirabende = true; } else if (sirabende = true & tascekebilir == true) { if (solalt.taslari.Count != 0) { if (t.Name == solalt.taslari[solalt.taslari.Count - 1].Name) { ben.tascek(t, solalt, ben); tascekebilir = false; } } } } label5.Text = Convert.ToString(ortanca.taslari.Count); }
public tas ara(oyuncu oyuncu, tas tas) { tas varolan = new tas("o", 61); for (int i = 0; i < oyuncu.taslari.Count - 1; i++) { if (oyuncu.taslari[i].Rengi == tas.Rengi & tas.Sayisi == oyuncu.taslari[i].Sayisi) { varolan = oyuncu.taslari[i]; } } return(varolan); }
public int uyumdantas(tas tas) { int kontrol = 0; for (int i = 0; i < oyuncu.uyumdakitaslari.Count; i++) { if (oyuncu.uyumdakitaslari[i].Rengi == tas.Rengi & oyuncu.uyumdakitaslari[i].Sayisi == tas.Sayisi) { kontrol = 1; } } return(kontrol); }
public int uyumdaara(oyuncu oyuncu, tas tas) { int varolan = 0; for (int i = 0; i < oyuncu.uyumdakitaslari.Count - 1; i++) { if (oyuncu.uyumdakitaslari[i].Rengi == tas.Rengi & tas.Sayisi == oyuncu.uyumdakitaslari[i].Sayisi) { varolan = 1; } } return(varolan); }
private int ara(oyuncu oyuncu, tas tas) { int donecek = 0; for (int i = 0; i < oyuncu.taslari.Count; i++) { if (oyuncu.taslari[i].Rengi == tas.Rengi & oyuncu.taslari[i].Sayisi == tas.Sayisi) { donecek = 1; break; } } return(donecek); }
public float kontrol1renk(tas tas, oyuncu oyuncu)// oyuncunun soluna atılan taşın eline renge göre yarayıp // yaramadığını kontrol eder { int h1 = 0; int h2 = 0; int h3 = 0; if (tas.Rengi == "yeşil") { h1 = ara(oyuncu, new tas("mavi", tas.Sayisi)); h2 = ara(oyuncu, new tas("siyah", tas.Sayisi)); h3 = ara(oyuncu, new tas("kırmızı", tas.Sayisi)); } else if (tas.Rengi == "mavi") { h1 = ara(oyuncu, new tas("yeşil", tas.Sayisi)); h2 = ara(oyuncu, new tas("siyah", tas.Sayisi)); h3 = ara(oyuncu, new tas("kırmızı", tas.Sayisi)); } else if (tas.Rengi == "siyah") { h1 = ara(oyuncu, new tas("yeşil", tas.Sayisi)); h2 = ara(oyuncu, new tas("mavi", tas.Sayisi)); h3 = ara(oyuncu, new tas("kırmızı", tas.Sayisi)); } if (tas.Rengi == "kırmızı") { h1 = ara(oyuncu, new tas("yeşil", tas.Sayisi)); h2 = ara(oyuncu, new tas("mavi", tas.Sayisi)); h3 = ara(oyuncu, new tas("siyah", tas.Sayisi)); } if (h1 == 1 & h2 == 1 & h3 == 1) { esik += 80f; } else if (h1 == 1 & h2 == 1 || h3 == 1 & h2 == 1 || h1 == 1 & h3 == 1) { esik += 0.55f; } else if (h1 == 1 || h2 == 1 || h3 == 1) { esik += 0.15f; } return(esik); }
public void bubble_sort() { for (int i = 0; i < oyuncu.taslari.Count - 1; i++) { for (int j = 1; j < oyuncu.taslari.Count - i; j++) { if (oyuncu.taslari[j].Sayisi < oyuncu.taslari[j - 1].Sayisi) { tas gecici = oyuncu.taslari[j - 1]; oyuncu.taslari[j - 1] = oyuncu.taslari[j]; oyuncu.taslari[j] = gecici; } } } }
public tas enazyarayantas() { tas tas = oyuncu.taslari[0]; float esik = 10f; for (int i = 0; i < oyuncu.taslari.Count - 1; i++) { if (oyuncu.taslari[i].esik < esik & uyumdantas(oyuncu.taslari[i]) == 0) { tas = oyuncu.taslari[i]; esik = oyuncu.taslari[i].esik; } } return(tas); }
private void olustur() { for (int h = 0; h < 2; h++) { for (int k = 0; k < 4; k++) { for (int i = 1; i <= 13; i++) { tas tas = new tas(renkdizisi[k], i); taslar.Add(tas); tas.MouseDown += new MouseEventHandler(_MouseDown); tas.MouseMove += new MouseEventHandler(_MouseMove); tas.MouseUp += new MouseEventHandler(_MouseUp); } } } }
public void tasoyna() { kontroller k = new kontroller(oyuncu); tascek t = new tascek(oyuncu); tas tas; int h = 0; if (koyuncuonce.taslari.Count != 0) { tas = koyuncuonce.taslari[koyuncuonce.taslari.Count - 1]; h = t.yararmikontrol(tas, oyuncu); if (h == 0) { if (ortanca.taslari.Count == 0) { this.Close(); MessageBox.Show("Ortanın Taşları Bitti"); this.Close(); } else { oyuncu.tascek(ortanca.taslari[0], ortanca, oyuncu); for (int i = 0; i < oyuncu.taslari.Count - 1; i++) { oyuncu.taslari[i].esik = 0; } if (oyuncu == sistem1) { while (ortanca.taslari[0].Left < 600) { ortanca.taslari[0].Left += 2; } } if (oyuncu == sistem2) { while (ortanca.taslari[0].Top > 75) { ortanca.taslari[0].Top -= 2; } } if (oyuncu == sistem3) { while (ortanca.taslari[0].Left > 300) { ortanca.taslari[0].Left -= 2; } } ıstakalık ı = new ıstakalık(oyuncu); int hsd = ı.dos(); int sad = hsd; ortanca.taslari[0].tasGosterilecekMi = true; oyunpaneli.Controls.Remove(ortanca.taslari[0]); ortataslar(); k.dusunenoyuncu(oyuncu); bitmekontrolu bt = new bitmekontrolu(oyuncu); Boolean bittinmi = bt.bitebilirmikontrol(); if (bittinmi == true) { Form3 f = new Form3(); MessageBox.Show(oyuncu.Adi + " " + oyuncu.Numara + " elini bitirdi"); f.Show(); this.Close(); } } } } if (h != 0) { oyuncu.tascek(koyuncuonce.taslari[koyuncuonce.taslari.Count - 1], koyuncu, oyuncu); k.dusunenoyuncu(oyuncu); bitmekontrolu bt = new bitmekontrolu(oyuncu); Boolean bittinmi = bt.bitebilirmikontrol(); if (bittinmi == true) { Form3 f = new Form3(); MessageBox.Show(oyuncu.Adi + " " + oyuncu.Numara + " elini bitirdi"); f.Show(); this.Close(); } } tasat tasat = new tasat(oyuncu); tas EnazYarayanTas = tasat.enazyarayantas(); oyuncu.tasat(EnazYarayanTas, oyuncu, koyuncu); }
private void _MouseUp(object sender, MouseEventArgs e) { if (kosacakmi == 1) { kostur(); kosacakmi = 0; } tas[,] liste = new tas[14, 14]; int satır = 0, sutun = 0; tas t = (tas)sender; int x = 170; int y = 340; Rectangle r1 = new Rectangle(t.Left, t.Top, 35, 50); for (int i = 0; i < 2; i++) { for (int j = 0; j < 15; j++) { Rectangle r2 = new Rectangle(x, y, 35, 50); if (r1.IntersectsWith(r2)) { konumlar[i, j].KonumTas = t; t.Left = x; t.Top = y; // MessageBox.Show("x :"+x+" y :"+y +"\n i :"+i +" j :"+j); break; } x += 37; } x = 170; y += 55; } if (t.Left < 50 && t.Top < 50) { ben.uyumlutassayisi = 0; for (int i = 0; i < 2; i++) { for (int j = 0; j < 15; j++) { if (konumlar[i, j].KonumTas != null) { liste[satır, sutun] = konumlar[i, j].KonumTas; sutun++; } else { if (sutun != 0) { satır++; sutun = 0; } } } } int [] dizi = new int [14]; int yesler = 0; int kontrol = 0; int perler = 0; for (int i = 0; i < 14; i++) { List <tas> per = new List <tas>(); for (int j = 0; j < 14; j++) { if (liste[i, j] != null) { per.Add(liste[i, j]); // MessageBox.Show("liste " + i + liste[i, j].Name); } } perler++; kontroller k = new kontroller(ben); int bak1 = k.sirakontrol(per); int bak2 = k.renkkontrol(per); if (bak1 == 1 || bak2 == 1) { kontrol = 1; } else { kontrol = -1; break; } } if (kontrol == -1) { MessageBox.Show("Eliniz bitik Değil"); t.Left = 230; t.Top = 350; } else { kontroller ek = new kontroller(ben); ek.Bitir(); } } surukleme = false;//bırakma kPanel.Cursor = Cursors.SizeAll; }
public void tascek(tas tas, k_oyuncu koyuncu, oyuncu oyuncu)//taş çekme { oyuncu.taslari.Add(tas); koyuncu.taslari.Remove(tas); }
private void dagıt() { int kontrol = 1; int s = 1; while (s != 103) { Random r = new Random();//üret int cikacak = r.Next(1, 103); //ara bak var mı içinde for (int i = 0; i < cikanlar.Length; i++) { if (cikanlar[i] == cikacak) { kontrol = 0; // varsa bırak tekrar üret continue; } } if (kontrol == 1) { // yoksa ekle tutulan taşı birine şutla if (s <= 15) { // Oyuncu taşı ben.taslari.Add(taslar[cikacak]); } else if (15 < s & s <= 29) { sistem1.taslari.Add(taslar[cikacak]); Console.Write("sistem1 taşi : " + taslar[cikacak]); } else if (29 < s & s <= 43) { // taşlari dağıt sistem2.taslari.Add(taslar[cikacak]); Console.Write("sistem2 taşi : " + taslar[cikacak]); } else if (43 < s & s <= 57) { sistem3.taslari.Add(taslar[cikacak]); Console.Write("sistem3 taşi : " + taslar[cikacak]); } else { ortanca.taslari.Add(taslar[cikacak]); Console.Write("yer taşi : " + taslar[cikacak]); } cikanlar[s] = cikacak; s++; kontrol = 1; } else { kontrol = 1; } } gosterge = ortanca.taslari[0]; ortanca.taslari.Remove(ortanca.taslari[0]); okey = new tas(gosterge.Rengi, gosterge.Sayisi + 1); gkuyuekle(); sirabende = true; tascekebilir = false; string fs = "bakalım"; }
public konum() { konumTas = null; }
public void pereekle(tas tas) { pers.Add(tas); }