public int calculatePoints(int player, int row, int col) { int pointsScored = 0, squares = 3, ri = row, rk = row, ci = col, ck = col; for (int i = 0, k = 2; i < squares; i++, k--) { // horizontal if (getStone(row, ci-2) == player && getStone(row, ck-1) == player) pointsScored++; // vertical if (getStone(ri-2, col) == player && getStone(rk-1, col) == player) pointsScored++; // diagonal l>r if (getStone(ri-2, ci-2) == player && getStone(rk-1, ck-1) == player) pointsScored++; // diagonal r>l if (getStone(ri+2, ci-2) == player && getStone(rk-1, ck-1) == player) pointsScored++; ri += i; rk += k; ci += i; ck += k; } return pointsScored; }