Это хрупкая стратегия для начала:
if tx == dx and ty == dy:
когда черепахи бродят по плавающей точке и редко приземляются в одно и то же место. Давайте переделаем этот код, чтобы фактически использовать методы turtle и полностью исключить tx, ty
и dx, dy
:
from turtle import Screen, Turtle
from random import randint
def moveDot():
dot.goto(randint(-100, 100), randint(-100, 100))
def chaseDot():
if turtle.distance(dot) < 1:
moveDot()
turtle.setheading(turtle.towards(dot))
turtle.forward(2)
screen.ontimer(chaseDot, 50)
screen = Screen()
turtle = Turtle()
turtle.speed('slowest')
dot = Turtle('circle')
dot.shapesize(0.5)
dot.speed('fastest')
dot.penup()
chaseDot()
screen.exitonclick()
Это позволяет черепахе непрерывно преследовать точку - точка перемещается, когда черепаха достигает ее.