每次我完成一行时,俄罗斯方块都会变慢Python、Turtle

问题描述

我正在尝试使用乌龟库在 python 中制作俄罗斯方块,但我遇到了不知道如何解决的问题。开始时游戏运行良好,但每次完成行时它都会变慢,并且在 5-6 次后变得无法播放。这是游戏的视频(我还没有完成): https://youtu.be/f8cENc-fP7E

这是完整的代码: https://pastebin.com/kS8yGJQ7

但问题可能出在函数检查中:

def check():
    global pen2,pen3
    
    for i in range(len(blocks2)):
        blocksfordelete = []
        k = 0
        
        for j in range(len(blocks2)):
            if blocks2[i][1] == blocks2[j][1]:
                blocksfordelete.append(blocks2[j])
                k += 1
        
        if k == 13:
            for m in range(len(blocksfordelete)):
                pen4 = turtle.Turtle("square")
                pen4.shapesize(squaresize / 20)
                pen4.penup()
                pen4.color("white")
                pen4.goto(blocksfordelete[m][0],blocksfordelete[m][1])
                pen4.stamp()
                
            for n in blocksfordelete:
                if n in blocks2:
                    blocks2.remove(n)
 
            for x in blocks2:
                if x[1] > blocksfordelete[0][1]:
                    pen5 = turtle.Turtle("square")
                    pen5.shapesize(squaresize / 20)
                    pen5.penup()
                    pen5.color("white")
                    pen5.goto(x[0],x[1])
                    pen5.stamp()
 
                    pen6 = turtle.Turtle("square")
                    pen6.shapesize(squaresize / 20)
                    pen6.penup()
                    x[1] -= squaresize
                    pen6.color("black")
                    pen6.goto(x[0],x[1])
                    pen6.stamp()
 
            break

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)