在没有 类 的情况下获得 pygame.Rect 颜色

getting pygame.Rect color without classes

我正在尝试将 Conway 的人生游戏编码作为工作资格测试的一部分, 使用 Python 且仅使用 PyGame 库而不使用 类 我的方法是创建一个矩形网格并将每个矩形分配给一个二维数组 到目前为止,这种方法已经完成,现在作为游戏规则的一部分,我需要检查矩形的颜色,有没有办法检查 pygame.Rect 对象的颜色?

以这种方式创建的每个矩形:

for y in range(0, WindowDimensions[1], CellSize):
    for x in range(0, WindowDimensions[0], CellSize):
        cell = pygame.Rect(x, y, CellSize, CellSize)
        AddCellToArray(cell)
        pygame.draw.rect(surface=Window, color=BLACK, rect=cell, width=1)
Column, Row = 0, 0

def AddCellToArray(cell):
    nonlocal Column, Row
    if Row < len(BoardArr):
        if Column < len(BoardArr[0]):
            BoardArr[Row][Column] = cell
            Column += 1
        else:
            Row += 1
            Column = 0
            BoardArr[Row][Column] = cell
            Column += 1

A pygame.Rect object has no color. When you call pygame.draw.rect屏幕上由矩形定义的区域填充颜色。

将矩形及其颜色存储在 BoardArr:

for y in range(0, WindowDimensions[1], CellSize):
    for x in range(0, WindowDimensions[0], CellSize):
        cell = pygame.Rect(x, y, CellSize, CellSize)
        color = BLACK
        AddCellToArray(cell, color)
        pygame.draw.rect(surface=Window, color=color, rect=cell, width=1)
Column, Row = 0, 0

def AddCellToArray(cell, color):
    nonlocal Column, Row
    if Row < len(BoardArr):
        if Column < len(BoardArr[0]):
            BoardArr[Row][Column] = [cell, color]
            Column += 1
        else:
            Row += 1
            Column = 0
            BoardArr[Row][Column] = [cell, color]
            Column += 1