Advertisement
shoshta73

More cursed chess code

Jun 20th, 2025
422
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.38 KB | None | 0 0
  1. #include "board.hxx"
  2.  
  3. #include "bitboard.hxx"
  4. #include "color.hxx"
  5.  
  6. namespace hce {
  7.  
  8. Board::Board() {
  9.   auto white = Color::eWhite;
  10.   auto black = Color::eBlack;
  11.  
  12.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::ePawn)] =
  13.       Bitboard{0b0000000'00000000'00000000'00000000'00000000'00000000'11111111'00000000};
  14.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::ePawn)] =
  15.      Bitboard{0b0000000'11111111'00000000'00000000'00000000'00000000'00000000'00000000};
  16.  
  17.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::eKnight)] =
  18.       Bitboard{0b0000000'00000000'00000000'00000000'000000000'00000000'00000000'01000010};
  19.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::eKnight)] =
  20.      Bitboard{0b01000010'00000000'00000000'00000000'00000000'00000000'00000000'00000000};
  21.  
  22.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::eBishop)] =
  23.       Bitboard{0b0000000'000000000'00000000'00000000'00000000'00000000'00000000'00100100};
  24.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::eBishop)] =
  25.      Bitboard{0b00100100'00000000'00000000'00000000'00000000'00000000'00000000'00000000};
  26.  
  27.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::eRook)] =
  28.       Bitboard{0b0000000'000000000'00000000'00000000'00000000'00000000'00000000'10000001};
  29.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::eRook)] =
  30.      Bitboard{0b10000001'00000000'00000000'00000000'00000000'00000000'00000000'00000000};
  31.  
  32.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::eQueen)] =
  33.       Bitboard{0b0000000'000000000'00000000'00000000'00000000'00000000'00000000'00010000};
  34.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::eQueen)] =
  35.      Bitboard{0b00010000'00000000'00000000'00000000'00000000'00000000'00000000'00000000};
  36.  
  37.   pieces[static_cast<std::uint8_t>(white)][static_cast<std::uint8_t>(PieceType::eKing)] =
  38.       Bitboard{0b0000000'000000000'00000000'00000000'00000000'00000000'00000000'00001000};
  39.  pieces[static_cast<std::uint8_t>(black)][static_cast<std::uint8_t>(PieceType::eKing)] =
  40.      Bitboard{0b00001000'00000000'00000000'00000000'00000000'00000000'00000000'00000000};
  41. }
  42.  
  43. Board::~Board() {
  44. }
  45.  
  46. }  // namespace hce
  47.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement