//proverava da li je u partiji p doslo do pozicije koja je trenutno na tabli private bool istapozicija(Partija p) { int n = tabla.listx.Count + tabla.listo.Count; for (int i = 0; i < n; i++) { bool f = false; if (i % 2 == 0) { for (int j = 0; j < tabla.listx.Count; j++) { if (tabla.listx[j].Item1 == p[i].Item1 && tabla.listx[j].Item2 == p[i].Item2) { f = true; } } } else { for (int j = 0; j < tabla.listo.Count; j++) { if (tabla.listo[j].Item1 == p[i].Item1 && tabla.listo[j].Item2 == p[i].Item2) { f = true; } } } if (!f) { return(false); } } return(true); }
public Partija(Partija p) { imeX = p.imeX; imeO = p.imeO; prezimeO = p.prezimeO; prezimeX = p.prezimeX; Rezultat = p.Rezultat; Potezi = p.Potezi; }
public override void tabla_click(object sender, EventArgs e) { Label kliknutaLabela = (Label)sender; string[] indeksi = kliknutaLabela.Name.Split(' '); int i = Convert.ToInt16(indeksi[0]); int j = Convert.ToInt16(indeksi[1]); if (kliknutaLabela.Text == PRAZNOPOLJE) { brojPraznihPolja--; if (X == true) { tabla[i, j].Text = "X"; System.IO.File.AppendAllText("partije.txt", $"[{i},{j}] - "); partija.dodajPotez(i, j); if (provera("X", i, j)) { System.Windows.Forms.MessageBox.Show("X igrac je pobedio"); System.IO.File.AppendAllText("partije.txt", " 1:0\n"); lista.Add(partija); partija = new Partija(); ispraznitablu(); return; } X = false; } else { tabla[i, j].Text = "O"; System.IO.File.AppendAllText("partije.txt", $"[{i},{j}]\n"); partija.dodajPotez(i, j); if (provera("O", i, j)) { System.Windows.Forms.MessageBox.Show("O igrac je pobedio"); System.IO.File.AppendAllText("partije.txt", " 0:1\n"); lista.Add(partija); partija = new Partija(); ispraznitablu(); return; } X = true; } if (brojPraznihPolja == 0) { System.Windows.Forms.MessageBox.Show("Igra je zavrsena nereseno"); System.IO.File.AppendAllText("partije.txt", "1/2 : 1/2\n"); ispraznitablu(); } } }
//promena partije koja se pregleda-klik na item u listboxu private void listBox1_SelectedIndexChanged_1(object sender, EventArgs e) { //MessageBox.Show("Selektovana Partija" + listBox1.SelectedIndex + listBox1.Items.Count); if (listBoxPartije.SelectedIndex >= 0) { Statuslabel.Text = statusPregledPartije; tabla.partijautoku = false; X = true; trenutna = tabla.bindingpartije[listBoxPartije.SelectedIndex]; textBoxImeX.Text = trenutna.imeX; textBoxPrezimeX.Text = trenutna.prezimeX; textBoxImeO.Text = trenutna.imeO; textBoxPrezimeO.Text = trenutna.prezimeO; tabla.ispraznitablu(); potez = 0; } }