loadFen method

void loadFen(
  1. String fen, {
  2. bool strict = false,
  3. bool initialSetup = false,
})

Implementation

void loadFen(
  String fen, {
  bool strict = false,
  bool initialSetup = false,
}) {
  final result = parseFen(
    fen: fen,
    variant: variant,
    strict: strict,
    initialPosition: initialSetup && startedInInitialPosition,
    seed: startPosSeed,
  );
  final newState = result.state.copyWith(hash: zobrist.compute(result.state));
  zobrist.incrementHash(newState.hash);
  history.add(newState);
  royalFile = result.castling.royalFile;
  castlingTargetK = result.castling.castlingTargetK;
  castlingTargetQ = result.castling.castlingTargetQ;
  castlingFileSymbols =
      result.castling.castlingFileSymbols ?? castlingFileSymbols;
  royalCaptureOptions = MoveGenParams.pieceCaptures(variant.royalPiece);
}