From 7feaefd70249a787dc7cdfd66e669895e2875beb Mon Sep 17 00:00:00 2001 From: BellCodeEditor <bellcode_dev@bell.ai> Date: Sun, 6 Mar 2022 15:44:40 +0800 Subject: [PATCH] auto save --- my_Tetris.py | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/my_Tetris.py b/my_Tetris.py index 0d65bac..2093f2a 100644 --- a/my_Tetris.py +++ b/my_Tetris.py @@ -16,15 +16,46 @@ clock = pygame.time.Clock() # pygame时钟,控制游戏速度(帧数) background = pygame.image.load('bg.png') font = pygame.font.Font('STKAITI.TTF', 60) # 字体 +center = [2,8] # 中心点,2行8列 +curr_shape = [(0, -1), (0, 0), (0, 1), (-1, 0)] # 当前形状 + while True: for event in pygame.event.get(): if event.type == locals.QUIT: exit() + if event.type == locals.KEYDOWN: + if event.key == locals.K_RIGHT: + if center[1] < 15: + center[1] = center[1]+1 + + elif event.key == locals.K_LEFT: + if center[1] > 1: + center[1] = center[1] - 1 + + elif event.key == locals.K_DOWN: + if center[0] < 25: + center[0] = center[0] + 1 # 将背景图画上去 - ??? + screen.blit(background, (0, 0)) + # 计算出所有小方块的行、列位置 + curr_pos = [] + for cube in curr_shape: # cube 立方体 + aa = (cube[0] + center[0], cube[1] + center[1]) #用相对位置加上屏幕中心点所在的位置 + curr_pos.append(aa) + # 取出所有小方块的行、列位置,计算坐标,绘制俄罗斯方块 + for cube in curr_pos: + pygame.draw.rect(screen, (153, 0, 102), + (cube[1] * 20-20, cube[0] * 20-20, + grid_size, grid_size), + 0) + pygame.draw.rect(screen, (255, 255, 255), + (cube[1] * 20-20, cube[0] * 20-20, + grid_size, grid_size), + 1) # 得分 - ??? + score_text = font.render(str(score), True, (0, 0, 0)) + screen.blit(score_text , (350,70)) # 刷新画面 pygame.display.update() - clock.tick(FPS) + clock.tick(FPS) \ No newline at end of file -- libgit2 0.25.0