private void StartButton_Click(object sender, EventArgs e) { if (textBox1.Text != "") { boardSize = Int32.Parse(textBox1.Text); } ; boardPoint startPoint = new boardPoint(Int32.Parse(textBox2.Text) - 1, Int32.Parse(textBox4.Text) - 1); boardPoint endPoint = new boardPoint(Int32.Parse(textBox3.Text) - 1, Int32.Parse(textBox5.Text) - 1); chessboard = new board(boardSize, startPoint, endPoint); chessboard.startPoint = startPoint; chessboard.endPoint = endPoint; this.Paint += Form1_Paint; this.Invalidate(); }
public board(int boardSize, boardPoint startPoint, boardPoint endPoint) { this.boardSize = boardSize; for (int i = 0; i < boardSize; i++) { for (int j = 0; j < boardSize; j++) { if (startPoint.coordinateX == i && startPoint.coordinateY == j) { startPoint.knightVisiting = true; boardArray.Add(startPoint); } else if (endPoint.coordinateX == i && endPoint.coordinateY == j) { boardArray.Add(endPoint); } else { boardArray.Add(new boardPoint(i, j)); } } } }
public void undoKnight(boardPoint previousPoint, boardPoint currentPoint) { currentPoint.knightVisiting = false; previousPoint.visited = false; previousPoint.knightVisiting = true; }