From f5e7c44f64c59d6afeb6e6e70f86f24273853414 Mon Sep 17 00:00:00 2001 From: BellCodeEditor <bellcode_dev@bell.ai> Date: Sun, 20 Aug 2023 19:28:22 +0800 Subject: [PATCH] auto save --- my_Tetris.py | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/my_Tetris.py b/my_Tetris.py index ca9dc0a..4b65470 100644 --- a/my_Tetris.py +++ b/my_Tetris.py @@ -8,7 +8,8 @@ grid_size = 20 # 格子大小 grid_num_width = 15 # 横向格子数量 grid_num_height = 25 # 纵向格子数量 FPS = 30 - +count=0 +staes=False # 创建窗口 screen = pygame.display.set_mode((460, 500)) pygame.display.set_caption("俄罗斯方块") @@ -49,14 +50,9 @@ cube_colors=[ (255,204,0),(204,0,51),(255,0,51),(0,102,153), (152,0,51),(204,255,102),(255,153,0)] -center = [2,8] -shape = random.choice(shape_list) -index = random.randint(0,len(shape)-1) # 中心点,2行8列 -curr_shape = shape[index] # 当前形状 -color = random.choice(cube_colors) + def check(center): - for event in curr_shape: - + for cube in curr_shape: cube = (cube[0]+center[0],cube[1]+center[1]) if cube[0]<1 or cube[1]<0 or cube[0]>grid_num_height \ or cube[1]>grid_num_width: @@ -80,6 +76,29 @@ while True: center[0] = center[0] + 1 if check(center)==False: center[0] = center[1] - 1 + elif event.key == locals.K_UP: + old_index=index + index+=1 + if index>=len(shape): + index=0 + curr_shape=shape[index] + if check(center)==False: + index=old_index + curr_shape=shape[index] + + if staes== False: + states=True + center = [2,8] + shape = random.choice(shape_list) + index = random.randint(0,len(shape)-1) # 中心点,2行8列 + curr_shape = shape[index] # 当前形状 + color = random.choice(cube_colors) + count += 1 + if count % FPS == 0: + center[0]=center[0]+1 + if check(center)==False: + center[0]=center[0]-1 + states=False # 将背景图画上去 screen.blit(background, (0, 0)) # 计算出所有小方块的行、列位置 -- libgit2 0.25.0