上接
五、实现静态的界面展示
定义class Tetris
注意:由于游戏开始需要一个随机生成一个方块,故在类中添加一个随机数生成的方法。randkey_gen
class Tetris():
def __init__(self,x0,y0):
self.x0, self.y0 = x0, y0 #记录游戏区(0,0)点在屏幕的坐标
self.rect = pygame.Rect(0,0,block_size, block_size) #方块矩形大小
self.display_arrs = [[0 for i in range(cols)] for j in range(rows)] #游戏区每格初始值设为0,为1时表示有障碍物,不能通过
self.color_arrs = [[0 for i in range(cols)] for j in range(rows)] #游戏区每格的颜色app_colors的索引值
self.x, self.y = 0, 0 #记录移动方块(0,0)点在游戏网格的(col,row)位置
self.key = 0 #记录移动方块在blocks的键,是哪种方块
self.index_ = 0 #记录移动方块形态的索引
self.next_key = self.randkey_gen() #记录下