https://app.diagrams.net/#G1L6OpQFXZSwGEhSH2UxPyyKzpQ4Xdgnth#%7B%22pageId%22%3A%22c4a cf3e9-155e-7222-9cf6-157b1a14988f%22%7D Описание диаграммы классов: 1. Player: Базовый класс, представляющий общего игрока с атрибутами (name, gender, age, cunning, eloquence, alive, role) и методами (init, assign_role, str). 2. Mafia, Civilian, Doctor, Policeman: Классы, унаследованные от класса Player. Каждый из них переопределяет метод action() для выполнения специфичных для их ролей действий. 3. Game: Класс, управляющий игровым процессом. Включает в себя методы для добавления игроков, назначения ролей, проведения ночной и дневной фаз и управления общей логикой игры. Сценарий работы: 1. Создаются игроки и присваиваются их атрибуты. 2. Игроки добавляются в игру. 3. Игра назначает роли игрокам случайным образом. 4. Игра чередует ночные и дневные фазы, выполняя соответствующие действия для каждого типа игрока до тех пор, пока игра не завершится (победа мафии или горожан).