Глава 19 · Проект: «Змейка»
Настраиваем экран Turtle
Отключаем автообновление экрана и заводим переменные, которые будут помнить состояние игры.
Настраиваем экран Turtle
Игре нужен предсказуемый, контролируемый экран — и, что важно, отключённое автообновление: обновлять картинку мы будем вручную, ровно раз за игровой шаг, а не при каждом мелком движении:
nastrojka_ekrana.py
screen = turtle.Screen()
screen.title("Змейка")
screen.bgcolor("black")
screen.setup(width=600, height=600)
screen.tracer(0) # отключаем автообновление
Зачем tracer(0)?
Без
tracer(0) Turtle перерисовывает экран после каждого отдельного движения — для игры, где нужно двигать голову и несколько сегментов тела на каждом шаге, это выглядело бы мерцающим и медленным. tracer(0) + ручной screen.update() в конце каждого шага дают куда более плавную анимацию.Создаём и инициализируем необходимые переменные
peremennye.py
RAZMER_SHAGA = 20
GRANICA = 280
napravlenie = "stop"
schet = 0
igra_okonchena = False
segmenty = [] # тело змейки
ЗАГЛАВНЫЕ_БУКВЫ — соглашение для констант
RAZMER_SHAGA и GRANICA не меняются в процессе игры — по соглашению такие «постоянные» переменные принято называть заглавными буквами. Само по себе это ничего не меняет технически, но сигнализирует читателю: «это значение не должно меняться».Практика в Jupyter Notebook
19-02-ekran.ipynb · настройка экрана и переменных