Простой способ исправить это - иметь pat
быть сокровищем, а не рисовать сокровище. Вместо того, чтобы рисовать квадрат, мы делаем курсор квадратной формы, изменяем его размер и размещаем его там, где нам нужно. Тогда метод distance()
между двумя черепахами имеет смысл:
from turtle import Screen, Turtle
from random import randint
CURSOR_SIZE = 20
# create a new screen and set screen size
screen = Screen()
screen.screensize(500, 500)
screen.bgcolor("pink")
screen.title("Treasure hunt")
# create turtle and its shape
pepe = Turtle("turtle", visible=False)
pepe.color("blue")
pepe.penup()
pepe.setposition(randint(-250, 250), randint(-250, 250))
pepe.pendown()
pepe.showturtle()
# create turtle that draws treasure square, set in random position
pat = Turtle('square', visible=False)
pat.shapesize(30 / CURSOR_SIZE)
pat.color("black", "red")
pat.penup()
pat.setposition(randint(-250, 250), randint(-250, 250))
pat.showturtle()
# prompt user if they want to go on a treasure hunt
treasure_hunt = input("Do you want to go on a treasure hunt? Press y to continue: ")
while treasure_hunt == 'y':
# ask user for input to move their turtle, each time sets
# the angle back to 0 to move right and 90 to move up
left_or_right = int(input("Enter number between -250 and 250 to move left or right: "))
pepe.setheading(0)
pepe.forward(left_or_right)
up_or_down = int(input("Enter number between -250 and 250 to move up or down: "))
pepe.setheading(90)
pepe.forward(up_or_down)
if pepe.distance(pat) < 15:
pat.write("You did it!", font=("Arial", 16, "normal"))
break
screen.mainloop()
![enter image description here](https://i.stack.imgur.com/q6QWZ.png)