示例#1
0
    def nextstate(self, board, player, action):
        if action == self.gbsize * self.gbsize:
            return board, -player

        b = Phan(self.gbsize, self.win_standard)
        b.board = np.copy(board)
        move = (int(action / self.gbsize), action % self.gbsize)
        b.moving(move, player)
        return b.board, -player
示例#2
0
    def nextstate(self, board, new_board, player, action):
        if action == self.gbsize * self.gbsize:
            return board, -player

        b = Phan(self.gbsize, self.win_standard)
        b.board = np.copy(board)
        b.new_board = np.copy(new_board)
        move = (int(action / self.gbsize), action % self.gbsize)
        b.moving(move, player)
        b.dim_moving(move, player)
        b.new_board[2] = self.oneminusone(np.copy(b.board), -player)
        return b.board, -player, b.new_board
示例#3
0
    def Act(self, board):
        try:
            where = input("move, ex(3,7)")
            b = Phan(self.gbsize, self.win_standard)
            b.board = np.copy(board)
            b.moving(where, self.human)
            board = np.copy(b.board)

        except Exception as e:
            move = -1

        if move == -1 or move not in Omokgame(
                self.gbsize, self.win_standard).validmove(board, self.human):
            print("Impossible move, retry")
            move = self.Act(board)

        return move