@kyklaed

Как правильно построить структуру приложения (python)?

Всем привет столкнулся с проблемой, я осваиваю ООП и для этого пишу простую текстовую рпг, у меня такая структура:
класс герой(hero) : жизни, сила, ловкость

класс монстр(monst) : жизни, сила, ловкость

их наследует класс с вычислением урона удара(fightsys) - в нем вычисляется урон наносимый монстром или героем в зависимости куда идет удар, голова, тело, руки, ноги

класс(fight) наследует fightsys
в нем обрабатывается уже логика боя, человек играет за героя и выбирает в какую часть ударить а монстр отвечает на рандомно.

так вот проблема в том что это не работает. то есть не понятно почему не работает, первая же проверка в классе fight на то что бы монстр и герой были с полными хп оканчивается неудачей, хп героя нормально отрабатывает а хп монстра не приходит, если оно вообще дальше своего класса не уходит. хотя все сделано 1 в 1 с классом героя.

В чем проблема ? или я вообще не верно построил приложение ?
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
Вы путаете классы с функциями.
Мне кажется, стоит сделать так:
class Person с методом hit(self, enemy, limb), где enemy - экземпляр Person, а дальше вы можете в методе описывать всю логику удара.
Соответственно Hero и Monster наследуются от Person, и в Hero определить метод fight, который спрашивал бы у пользователя куда и кого ударить, и испольовал бы self.hit(кого, куда).
В целом, не плодите много классов и наследований, а также пишите имена классов CamelCase'ом.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы