diff --git a/my_Tetris.py b/my_Tetris.py index f2385ec..b5b6dd6 100644 --- a/my_Tetris.py +++ b/my_Tetris.py @@ -7,7 +7,8 @@ grid_size = 20 # 格子大小 grid_num_width = 15 # 横向格子数量 grid_num_height = 25 # 纵向格子数量 FPS = 30 - +count=0 +states=False # 创建窗口 screen = pygame.display.set_mode((460, 500)) pygame.display.set_caption("俄罗斯方块") @@ -43,13 +44,6 @@ cube_colors = [ (204, 153, 153), (102, 102, 153),(153, 0, 102), (255, 204, 0), (204, 0, 51),(255, 0, 51), (0, 102, 153), (153, 0, 51), (204, 255, 102), (255, 153, 0)] - -center = [2, 8] # 第2行第8列 -#current_shape = [(0, -1), (0, 0), (0, 1), (-1, 0)] -shape=random.choice(shape_list) -index=random.randint(0,len(shape)-1) -current_shape=shape[index] -color=random.choice(cube_colors) def check(center): for cube in current_shape: cube=(cube[0]+center[0],cube[1]+center[1]) @@ -67,11 +61,8 @@ while True: elif event.key == locals.K_LEFT: # 向左 center[1] -= 1 if check(center)==False: - center[1]+=1 - elif event.key == locals.K_DOWN: # 向下 - center[0] += 1 - if check(center)==False: - center[0]+=1 + center[1]+=1 # 向下 + elif event.key==locals.K_UP: old_index=index index+=1 @@ -81,7 +72,19 @@ while True: if check(center)==False: index=old_index current_shape=shape[index] - + if states=False: + states=True + center = [2, 8] # 第2行第8列 + shape=random.choice(shape_list) + index=random.randint(0,len(shape)-1) + current_shape=shape[index] + color=random.choice(cube_colors) + count+=1 + if count%FPS==0: + center[0] += 1 + if check(center)==False: + center[0]+=1 + states=False # 将背景图画上去 screen.blit(background, (0, 0)) # 计算出所有小方块的行、列位置