Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Board
- {
- public:
- Figure* square[64];
- bool turn;
- int wkn;
- int wkl;
- int bkn;
- int bkl;
- Board()
- {
- //arrange figure and pawns
- for (int i = 0; i < 8; ++i)
- {
- square[8 + i] = new Pawn(i, 1, 0);
- }
- //Pawn* BlackPawn[8];
- for (int i = 0; i < 8; ++i)
- {
- square[48 + i] = new Pawn(i, 6, 1);
- }
- //BlankSquare* BlankField[32];
- for (int i = 0; i < 32; ++i)
- {
- square[16 + i] = new BlankSquare(i/8 + 2, i % 8);
- }
- square[0] = new Rook(0,0,0);
- square[7] = new Rook(7,0,0);
- square[1] = new Knight(1,0,0);
- square[6] = new Knight(6,0,0);
- square[2] = new Bishop(2, 0, 0);
- square[5] = new Bishop(5, 0, 0);
- square[3] = new Queen(3, 0, 0);
- square[4] = new King(4, 0, 0);
- // Для чёрных право-лево определяется с точки зрения чёрных
- square[63] = new Rook(7, 7, 1);
- square[56] = new Rook(0, 7, 1);
- square[62] = new Knight(6, 7, 1);
- square[57] = new Knight(1, 7, 1);
- square[61] = new Bishop(5, 7, 1);
- square[58] = new Bishop(2, 7, 1);
- square[60] = new Queen(3, 7, 1);
- square[59] = new King(4, 7, 1);
- wkn = 0;
- wkl = 4;
- bkn = 7;
- bkl = 4;
- turn = false;
- }
- Board (const Board &A) :turn(A.turn), wkn(A.wkn), wkl(A.wkl), bkn(A.bkn), bkl(A.bkl)
- {
- for (int i = 0; i < 64; ++i)
- {
- square[i] = &A.square[i]->Clone();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement