public void SetBoard(int[,] arr, COMOKRULE pr) { pRule = pr; for (int i = 1; i <= ConstValue.SIZE; i++) { for (int j = 1; j <= ConstValue.SIZE; j++) { nBoard[i, j] = arr[i, j]; } } pRule.SetBoard(arr); }
// 착점을 위한함수 // 착점이 가능한지 체크하고 // 착점이 되면 저장을 한다. // 다음으로 오목인지 검사하여 결과를 리턴한다. virtual public int placement(int ax, int ay, int nStone) { setXY(ax, ay); if (isOccupy()) { return((int)V2.OCCUPIED); } int returnValue = (int)V2.CHANGE; orule.SetBoard(arrBoard); if (orule.IsFive(x, y, nStone) || orule.IsSix(x, y, nStone)) { returnValue = (int)V2.FIVEMOK; } saveBoard(nStone); return(returnValue); }