//tutkii mihin kohtaan lautaa klikattiin ja toimii sen mukaan private void TietokoneLauta_Click(object sender, EventArgs e) { if (valmis == 1) { Point hiiri = Cursor.Position; hiiri = TietokoneLauta.PointToClient(hiiri); Pen bluePen = new Pen(Color.Blue, 2); Pen redPen = new Pen(Color.Red, 2); Graphics g; g = TietokoneLauta.CreateGraphics(); if (hiiri.Y > 0 && hiiri.X > 0 && hiiri.X < 200 && hiiri.Y < 200 && pelaaja == 1 && ruutu1Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(0, 0); Point point2 = new Point(200, 200); Point point3 = new Point(0, 200); Point point4 = new Point(200, 0); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu1Pelaaja = 1; board[0, 0] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.Y > 0 && hiiri.X > 200 && hiiri.X < 400 && hiiri.Y < 200 && pelaaja == 1 && ruutu2Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(200, 0); Point point2 = new Point(400, 200); Point point3 = new Point(200, 200); Point point4 = new Point(400, 0); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu2Pelaaja = 1; board[0, 1] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.Y > 0 && hiiri.X < 600 && hiiri.X > 400 && hiiri.Y < 200 && pelaaja == 1 && ruutu3Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(400, 0); Point point2 = new Point(600, 200); Point point3 = new Point(400, 200); Point point4 = new Point(600, 0); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu3Pelaaja = 1; board[0, 2] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.X > 0 && hiiri.X < 200 && hiiri.Y > 200 && hiiri.Y < 400 && pelaaja == 1 && ruutu4Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(0, 200); Point point2 = new Point(200, 400); Point point3 = new Point(0, 400); Point point4 = new Point(200, 200); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu4Pelaaja = 1; board[1, 0] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.X > 200 && hiiri.X < 400 && hiiri.Y > 200 && hiiri.Y < 400 && pelaaja == 1 && ruutu5Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(200, 200); Point point2 = new Point(400, 400); Point point3 = new Point(200, 400); Point point4 = new Point(400, 200); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu5Pelaaja = 1; board[1, 1] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.X < 600 && hiiri.X > 400 && hiiri.Y > 200 && hiiri.Y < 400 && pelaaja == 1 && ruutu6Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(400, 200); Point point2 = new Point(600, 400); Point point3 = new Point(400, 400); Point point4 = new Point(600, 200); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu6Pelaaja = 1; board[1, 2] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.X > 0 && hiiri.Y < 600 && hiiri.X < 200 && hiiri.Y > 400 && pelaaja == 1 && ruutu7Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(0, 400); Point point2 = new Point(200, 600); Point point3 = new Point(0, 600); Point point4 = new Point(200, 400); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu7Pelaaja = 1; board[2, 0] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.Y < 600 && hiiri.X > 200 && hiiri.X < 400 && hiiri.Y > 400 && pelaaja == 1 && ruutu8Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(200, 400); Point point2 = new Point(400, 600); Point point3 = new Point(200, 600); Point point4 = new Point(400, 400); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu8Pelaaja = 1; board[2, 1] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } if (hiiri.X < 600 && hiiri.Y < 600 && hiiri.X > 400 && hiiri.Y > 400 && pelaaja == 1 && ruutu9Pelaaja == 0) { if (pelaaja == 1) { valmis = 0; Point point1 = new Point(400, 400); Point point2 = new Point(600, 600); Point point3 = new Point(400, 600); Point point4 = new Point(600, 400); g.DrawLine(bluePen, point1, point2); g.DrawLine(bluePen, point3, point4); ruutu9Pelaaja = 1; board[2, 2] = 1; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 1; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } this.Text = "Tietokoneen vuoro"; TietokoneSiirto(); this.Text = "Pelaaja 1 vuoro"; pelaaja = 2; if (checkWinner(pelaaja) == true) { LaskeAika(); Voittaja = 2; Task.Delay(1000).Wait(); Leave(); } if (tasaPeli() == true) { LaskeAika(); Voittaja = 0; Task.Delay(1000).Wait(); Leave(); } pelaaja = 1; valmis = 1; } } } //MessageBox.Show(ruutu.ToString()); }
// tekee tietokoneen siirron public void TietokoneSiirto() { Graphics g; g = TietokoneLauta.CreateGraphics(); Pen redPen = new Pen(Color.Red, 2); Random random = new Random(); int i = random.Next(3); int j = random.Next(3); while (board[i, j] != 0) { i = random.Next(3); j = random.Next(3); } board[i, j] = 2; if (i == 0 && j == 0) { ruutu1Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 0, 0, 200, 200); } else if (i == 0 && j == 1) { ruutu2Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 200, 0, 200, 200); } else if (i == 0 && j == 2) { ruutu3Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 400, 0, 199, 200); } else if (i == 1 && j == 0) { ruutu4Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 0, 200, 200, 200); } else if (i == 1 && j == 1) { ruutu5Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 200, 200, 200, 200); } else if (i == 1 && j == 2) { ruutu6Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 400, 200, 199, 200); } else if (i == 2 && j == 0) { ruutu7Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 0, 400, 200, 199); } else if (i == 2 && j == 1) { ruutu8Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 200, 400, 200, 199); } else if (i == 2 && j == 2) { ruutu9Pelaaja = 2; Task.Delay(1000).Wait(); g.DrawEllipse(redPen, 400, 400, 199, 199); } }