Предыдущие части: Визуализация поля, Загрузка уровня, INI-файл, Пишем Питона на Питоне! В предыдущей части мы ознакомились с кодом для вывода игрового уровня на экран. Но оставить его просто болтаться в main.py нельзя. Давайте повторим, в каких режимах может находиться игра: Мы написали код для отображения режима "Игра", но остались другие режимы. В каждом из них нужно отображать что-то своё, и также действует своя логика событий. В главном меню нужно отобразить заставку и кнопки меню; в настройках – названия настроек и управляющие элементы (вкл/выкл), в таблице рекордов – список с именами и очками. Куда девать весь этот код? В кучу мы его сваливать не будем. Поэтому для каждого режима игры мы сделаем свой класс отображения. Весь код, необходимый для отображения данных в конкретном режиме, будет находиться внутри конкретного класса. У нас будет несколько классов отображения, но очевидно, что все они могут наследоваться от одного общего класса, который мы назовём View. Давайте сделаем