From 4840be2ee4508083cfb819fba673afa17434798d Mon Sep 17 00:00:00 2001 From: Tait Hoyem <44244401+TTWNO@users.noreply.github.com> Date: Mon, 8 Apr 2019 21:08:09 +0000 Subject: [PATCH] All [get_all_moves] tests working. --- src/functions.cpp | 38 +++----------------------------------- tests/B_test_boards.h | 5 ++--- tests/W_test_boards.h | 4 ++-- 3 files changed, 7 insertions(+), 40 deletions(-) diff --git a/src/functions.cpp b/src/functions.cpp index 0ac8536..d247528 100755 --- a/src/functions.cpp +++ b/src/functions.cpp @@ -122,17 +122,10 @@ void _get_all_moves_b_pawn(int x, int y, std::unordered_set *pns){ } std::unordered_set get_all_moves(Position pn, std::array board){ - PieceType pt = board[pn]; std::unordered_set pns; int x = pos_to_pair(pn).first; int y = pos_to_pair(pn).second; - std::vector kg_dx = {-1,0,1,-1,0,1,-1,0,1}; - std::vector kg_dy = {1,1,1,0,0,0,-1,-1,-1}; - std::vector Bpa_dx = {0,-1,0,1,0,0}; - std::vector Bpa_dy = {-1,0,0,0,1,2}; - std::vector Wpa_dx = {0,0,-1,0,1,0}; - std::vector Wpa_dy = {2,1,0,0,0,-1}; switch(pt){ case PieceType::B_QUEEN: case PieceType::W_QUEEN: @@ -154,38 +147,13 @@ std::unordered_set get_all_moves(Position pn, std::array= 0; j--){ -// for (int i = 0; i < 8; i++){ -// for (int k = 0; k < 9; k++){ -// if (std::make_pair(x+kg_dx[k],y+kg_dy[k]) == std::make_pair(i,j)) -// pns.push_back(pair_to_pos(std::make_pair(i,j))); -// } -// } -// } - break; + break; case PieceType::B_PAWN: _get_all_moves_b_pawn(x, y, &pns); -// for (int j = 7; j >= 0; j--){ -// for (int i = 0; i < 8; i++){ -// for (int k = 0; k < 6; k++){ -// if (std::make_pair(x+Bpa_dx[k],y+Bpa_dy[k]) == std::make_pair(i,j)) -// pns.push_back(pair_to_pos(std::make_pair(i,j))); -// } -// } -// } - break; + break; case PieceType::W_PAWN: _get_all_moves_w_pawn(x, y, &pns); - /* - for (int j = 7; j >= 0; j--){ - for (int i = 0; i < 8; i++){ - for (int k = 0; k < 6; k++){ - if (std::make_pair(x+Wpa_dx[k],y+Wpa_dy[k]) == std::make_pair(i,j)) - pns.push_back(pair_to_pos(std::make_pair(i,j))); - } - } - }*/ - break; + break; default: break; } diff --git a/tests/B_test_boards.h b/tests/B_test_boards.h index 9486097..0b1838e 100644 --- a/tests/B_test_boards.h +++ b/tests/B_test_boards.h @@ -109,7 +109,7 @@ const std::array B_PAWN_BOARD = { NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, - NONE, NONE, NONE, B_PAWN, NONE, NONE, NONE, NONE, + NONE, NONE, NONE, NONE, NONE, B_PAWN, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE @@ -151,7 +151,7 @@ const std::unordered_set B_KING_SIDE1_ALL_MOVES = { A7,B7 }; -const Position B_PAWN_SIDE1_POS = A1; +const Position B_PAWN_SIDE1_POS = A8; const std::array B_PAWN_SIDE1_BOARD = { B_PAWN, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, @@ -163,7 +163,6 @@ const std::array B_PAWN_SIDE1_BOARD = { NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE }; const std::unordered_set B_PAWN_SIDE1_ALL_MOVES = { - A8, A7, B7, A6 }; diff --git a/tests/W_test_boards.h b/tests/W_test_boards.h index f8c3faa..62b5453 100644 --- a/tests/W_test_boards.h +++ b/tests/W_test_boards.h @@ -153,7 +153,7 @@ const std::array W_PAWN_BOARD = { NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, - NONE, NONE, NONE, W_PAWN, NONE, NONE, NONE, NONE, + NONE, NONE, NONE, NONE, NONE, W_PAWN, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE @@ -164,7 +164,7 @@ const std::unordered_set W_PAWN_ALL_MOVES = { E5, F5, G5 }; -const Position W_PAWN_SIDE1_POS = A1; +const Position W_PAWN_SIDE1_POS = A8; const std::array W_PAWN_SIDE1_BOARD = { W_PAWN, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE,