/// <summary> /// Make the computer move on the board /// </summary> public void PlayComputer() { PlEngine.PlThreadAttachEngine(); string board = StringBoard(mBoard); string query = string.Format(@"alphabeta({0}/{1}, -100, 100, NewBoard, Temp, {2})", mComputerSign, board, mDifficulty); using (PlQuery q = new PlQuery(query)) { PlTerm newBoard = q.SolutionVariables.First()["NewBoard"]; string result = newBoard[0].ToString(); string next = result.Substring(0, 1); string b = result.Substring(2); mBoard = BoardString(b); } PlEngine.PlThreadDestroyEngine(); }