python去棋盘游戏,努力弄清楚如何捕捉多块石头

时间:2018-04-10 13:17:28

标签: python numpy pygame baduk

我一直在尝试制作GO游戏,在python中使用pygame和numpy数组来存储棋盘位置和石头颜色(0,1,2)。我的问题是我一直在使用for循环来检查每个索引,并通过添加或删除int检查相邻索引:

columns = 5
rows = 5

def create_board():
    board = np.zeros((row,col))
    return board

board = create_board()

def libertyCheck():
    for c in range(columns):
        for r in range(rows):
            if board[c][r+1] == 0:
                x = 1
            (lots more ifs, then add x's to see if all spaces are occupied)

这种方法似乎可以捕获单个石头(只要它不在板的边缘,因为它也开始引起越界问题),但是一旦相同颜色的几块石头变得非常复杂彼此相邻,可能需要也可能不需要被捕获。

必须有一种更好的方法来搜索这些索引而不会导致超出范围?一个可以让我跟踪所有的石头及其相邻的空间?

0 个答案:

没有答案