Не работает проверка столкновения в игре python turtle

Я пишу игру с помощью библиотеки turtle, где черепаха сталкиваясь с кругом, погибает. Но при запуске программа виснет и черепаха не двигается. Что еще можно использовать кроме бесконечного цикла для проверки столкновения.

from turtle import *
from random import *
import math

hideturtle()


player = Turtle()
player.up()
player.shape("turtle")
player.resizemode("auto")
player.pensize(8)
player.goto(-500,0)
player.speed(0)


rocks = []
for i in range(20):
    rocks.append(Turtle())
for rock in rocks:
    rock.shape("circle")
    rock.up()
    rock.speed(0)
    rock.resizemode("auto")
    rock.pensize(randint(1,10))
    rock.color("brown")
    x = randint(-300, 300)
    y = randint(-300, 300)
    rock.goto(x, y)



def moveRight():
    x = player.xcor()
    x += 10
    player.setx(x)

def moveLeft():
    x = player.xcor()
    x -= 10
    player.setx(x)


def moveForward():
    y = player.ycor()
    y += 10
    player.sety(y)

def moveBackward():
    y = player.ycor()
    y -= 10
    player.sety(y)

def isCollosion(t1, t2):
    distance = math.sqrt(math.pow(t1.xcor() - t2.xcor(), 2) + math.pow(t1.ycor() - t2.ycor(), 2))
    if distance < 35:
        return True
    else:
        return False


wn = Screen() #initiate the window
wn.title("ship")
wn.bgcolor("orange")


wn.onkey(moveRight, "d")
wn.onkey(moveLeft, "a")
wn.onkey(moveForward, 'w')
wn.onkey(moveBackward, 's')
wn.listen()



while True:
    for rock in rocks: 
        if isCollosion(player, rock):
            player.hideturtle()  #hide player from the arena
            color('red')
            penup()
            setposition(0, 0)
            write("Game Over!",  align="center", font=("Arial", 35, "normal"))     
            done()  #Stop Game
            break


done()
close()

Ответы (0 шт):