From d858eb0cb2c9bc5dfbe7e2fd272747ca31975195 Mon Sep 17 00:00:00 2001 From: Mark Bluemer Date: Tue, 18 Apr 2017 08:52:52 -0400 Subject: [PATCH] wrote move result function --- include/BitBoard.h | 7 +++---- include/Move.h | 1 + src/BitBoard.cpp | 14 ++++++++++++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/include/BitBoard.h b/include/BitBoard.h index 7c632b0..4f05f20 100644 --- a/include/BitBoard.h +++ b/include/BitBoard.h @@ -36,13 +36,12 @@ class BitBoard static const uint32_t blackKingSpots = 0x82000820; /* Class member variables */ - const uint32_t m_blackPieces = 0x41C71C3; - const uint32_t m_whitePieces = 0xE3820C38; - const uint32_t m_kings = 0; + uint32_t m_blackPieces = 0x41C71C3; + uint32_t m_whitePieces = 0xE3820C38; + uint32_t m_kings = 0; bool m_isBlacksTurn = true; - // static constexpr uint32_t rowMask[8]; /* Class member functions */ diff --git a/include/Move.h b/include/Move.h index fdbeb22..ad8f7b6 100644 --- a/include/Move.h +++ b/include/Move.h @@ -17,6 +17,7 @@ class Move void removeLast(); bool isEmpty(); int length(); + std::vector getMoves() { return moves; } }; #endif diff --git a/src/BitBoard.cpp b/src/BitBoard.cpp index f3cd033..9f9ea33 100644 --- a/src/BitBoard.cpp +++ b/src/BitBoard.cpp @@ -187,3 +187,17 @@ std::vector const BitBoard::actions() return moves; } + +BitBoard const BitBoard::result(Move move) { + BitBoard currBoard = *this; + int start; + for (int x : move.getMoves()) { + if (!start) { + start = x; + } else { + currBoard = boardMove(currBoard, 1<