public Result Move(int i, int j) { int i1, j1, i2, j2; if (Pos.Who(out i1, out j1, out i2, out j2) != Result.Game) { return(Pos.Who(out i1, out j1, out i2, out j2)); } if (Pos.Mark(i, j, V)) { DrawMark(i, j); if (V == 'X') { V = 'O'; } else { V = 'X'; } Result res = Pos.Who(out i1, out j1, out i2, out j2); if (res == Result.X) { DrawLine(i1, j1, i2, j2); //MessageBox.Show("Выиграли Крестики!"); } if (res == Result.O) { DrawLine(i1, j1, i2, j2); //MessageBox.Show("Выиграли Нолики!"); } if (res == Result.Non) { MessageBox.Show("Ничья!"); } if ((res == Result.Game) && (V == 'O')) { Run(); } return(res); } else { return(Result.Error); } }
TPosition PreMove(int i, int j) { TPosition res = Pos.Copy(); if (res.Mark(i, j, V)) { return(res); } else { return(null); } }