# 导入pygame模块
import pygame
# 定义三个常量函数,用来表示白棋,黑棋,以及 空
EMPTY = 0
BLACK = 1
WHITE = 2
# 定义黑色(黑棋用,画棋盘)
black_color = [0, 0, 0]
# 定义白色(白棋用)
white_color = [255, 255, 255]
# 定义棋盘这个类
class RenjuBoard(object):
def __init__(self):
# self._board = board = [[EMPTY] * 15 for _ in range(15)]
# 将棋盘每一个交叉点都看作列表的一个元素位,一共有15*15共225个元素
self._board = [[]] * 15
self.reset()
# 重置棋盘
def reset(self):
for row in range(len(self._board)):
self._board[row] = [EMPTY] * 15
# 定义棋盘上的下棋函数,row表示行,col表示列,
# is_black表示判断当前点位该下黑棋,还是白棋
def move(self, row, col, is_black):
if self._board[row][col] == EMPTY:
self._board[row][col] = BLACK if is_black else WHITE
return True
return False
# 给棋盘定义一个函数将自己在screen上面画出来,
# 使用pygame.draw()函数。并且顺便将下了的棋子也画出来
def draw(self, screen):
for h in range(1, 16):
pygame.draw.line(screen, black_color,
[40, h * 40], [600, h * 40], 1)
pygame.draw.lin