Запуск и остановка черепахи пробелом (моделирование комнаты)

Программа рисует макет стены. По моей задумке, она должна нарисовать границы стены, переместиться в центр и только при нажатии пробела заполнять стену рисунками, создавая дизайн. И она должна также остановливаться при нажатии пробела. Порблема в том, что при моём коде она выполняет все задачи, кроме остановки. Может быть есть какие-нибудь идеи? На картинке результат.

from turtle import *
from turtle import Screen
from random import randint
import random

seinalaius=float(input("Sisestage seina laius (500-1500): "))
seinapikkus=float(input("Sisestage seina pikkus (500-900): "))
värvipalett=input("Mis värvipaletti tahaksite kasutada? (Valik: mustvalge, roosa, punane, lilla, sinine, kollane, roheline, beež, oranž): ")
screen = Screen()
fail = open(värvipalett + '.txt', encoding='UTF-8')
värvid = []
for rida in fail:
    rida = rida.strip()
    värvid.append(rida)

up()
goto(-seinalaius / 2, -seinapikkus / 2)
down()

for i in range(2):
    forward(seinalaius)
    left(90)
    forward(seinapikkus)
    left(90)

up()
goto(0, 0)
down()

def current_state():
        global moving
        moving = False
        penup()

def next_state():
    global moving
    pendown()
    moving = True
    move()

def space_bar():
    global current_state, next_state
    next_state()
    current_state, next_state = next_state, current_state

def move():
    if moving:
        while True:
            pöörded = randint(4, 8)
            begin_fill()
            color(random.choice(värvid))
            for i in range(pöörded):
                pikkus = randint(0, 150)

                up()
                forward(pikkus)
                if not -seinalaius / 2 <= xcor() <= seinalaius / 2 or not -seinapikkus / 2 <= ycor() <= seinapikkus / 2:
                    backward(pikkus)
                backward(pikkus)
                down()

                forward(pikkus)
                lr = randint(1, 2)
                if lr == 1:
                    left(90)
                else:
                    right(90)
            speed("fastest")
            end_fill()
            up()
            down()

current_state()

screen.onkey(space_bar, "space")

screen.listen()

screen.mainloop()

Результат


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