diff --git a/state.py b/state.py index 993211d..842ffca 100644 --- a/state.py +++ b/state.py @@ -16,6 +16,9 @@ def setup(self): self.board[row].append(BLACK) else: self.board[row].append(WHITE) + + def piece(self, row, col): + return self.board[row][col] def removePiece(self, row, col): self.board[row][col] = None @@ -31,3 +34,67 @@ def __str__(self): for row in range(self.nrows): string += str(self.board[row]) + "\n" return string + + def first_moves_set(self): + firstMoves = [] + firstMoves.append((0, 0)) + firstMoves.append((0, 17)) + firstMoves.append((17, 0)) + firstMoves.append((17, 17)) + firstMoves.append((8, 8)) + firstMoves.append((8, 9)) + firstMoves.append((9, 8)) + firstMoves.append((9, 9)) + return firstMoves + + def second_moves_set(self): + secondMoves = [] + #If bottom left corner of the board is removed + if (self.board[0][0] == ' '): + secondMoves.append((0, 1)) + secondMoves.append((1, 0)) + return secondMoves + #Top left corner is removed + elif (self.board[0][17] == ' '): + secondMoves.append((0, 16)) + secondMoves.append((1, 17)) + return secondMoves + #Top right + elif (self.board[17][17] == ' '): + secondMoves.append((16, 17)) + secondMoves.append((17, 16)) + return secondMoves + #Bottom right + elif (self.board[17][0] == ' '): + secondMoves.append((16, 0)) + secondMoves.append((17, 1)) + return secondMoves + #Middle game states, bottom left + elif (self.board[8][8] == ' '): + secondMoves.append((8, 9)) + secondMoves.append((8, 7)) + secondMoves.append((7, 8)) + secondMoves.append((9, 8)) + return secondMoves + #Mid top left + elif (self.board[8][9] == ' '): + secondMoves.append((8, 10)) + secondMoves.append((8, 8)) + secondMoves.append((9, 9)) + secondMoves.append((7, 9)) + return secondMoves + #Mid top right + elif (self.board[9][9] == ' '): + secondMoves.append((8, 9)) + secondMoves.append((10, 9)) + secondMoves.append((9, 8)) + secondMoves.append((9, 10)) + return secondMoves + #Mid bot right + elif (self.board[9][8] == ' '): + secondMoves.append((10, 8)) + secondMoves.append((8, 8)) + secondMoves.append((9, 9)) + secondMoves.append((9, 7)) + return secondMoves +