curses.🔘
tetris.py, 766 строк: все повороты фигур считаются заранее в build_rotations, при повороте у стены пробуются сдвиги, есть удержание фигуры и превью следующих, а когда разом уходят четыре линии, по экрану летят частицы;🔘
snake.py, 423 строки: поле подгоняется под размер терминала, интервал тика уменьшается с каждым уровнем, голова заворачивается через край;🔘 обе игры печатают через
safe_addstr: он глотает curses.error, а в змейке ещё и обрезает строку по краю окна — иначе запись в последнюю ячейку роняет игру;🔘 рекорды пишутся в общий
game_high_scores.json так, чтобы не затирать записи соседних игр;🔘
tetris_pygame.py — та же игра на pygame и dataclass, удобно сравнить два подхода к одной механике.@zen_of_python
