Помогите разобраться почему не работает код

Я делаю простую игру где надо поймать черепашку и столкнулся с такой проблемой что черепашки не прекращают движение после достижения 30 координат и просто вечно идут, как исправить данную проблему?

from turtle import *
from time import *
from random import *


t1 = Turtle()
t1.color("green")
t1.penup()
t1.shape("turtle")
t1.speed(100)
t1.width(5)
t2 = Turtle()
t2.color("red")
t2.penup()
t2.shape("turtle")
t2.speed(100)
t2.width(5)
t3 = Turtle()
t3.color("blue")
t3.penup()
t3.shape("turtle")
t3.speed(100)
t3.width(5)

angle0 = randint(0, 360)
angle1 = randint(0, 360)
angle2 = randint(0, 360)
t1.setheading(angle0)
t2.setheading(angle1)
t3.setheading(angle2)

def catch(x, y):
    t1.up()
    t1.goto(randint(-200,200), randint(-200, 200))
    t1.down()
    t1.lt(randint(0,360))
def catch1(x, y):
    t2.up()
    t2.goto(randint(-200,200), randint(-200, 200))
    t2.down()
    t2.lt(randint(0,360))
def catch2(x, y):
    t3.up()
    t3.goto(randint(-200,200), randint(-200, 200))
    t3.down()
    t3.lt(randint(0,360))
t1.onclick(catch)
t2.onclick(catch1)
t3.onclick(catch2)

t1.position()
t2.position()
t3.position()
w = 30
h = 30

t1.down()
t2.down()
t3.down()
def finish(t1, t2, t3):
    t1_outside = abs(t1.xcor()) > w or abs(t1.ycor()) > h
    t2_outside = abs(t2.xcor()) > w or abs(t2.ycor()) > h
    t3_outside = abs(t3.xcor()) > w or abs(t3.ycor()) > h
    isOutside = t1_outside or t2_outside or t3_outside
    return isOutside

while finish != True:
    t1.fd(5)
    t2.fd(5)
    t3.fd(5)
    sleep(0.1)
eitonclick()

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