class Hero:
def __init__(self, name, hp, power_attack):
self.name = name # Установка имени героя при создании объекта
self.hp = hp # Установка здоровья героя при создании объекта
self.power_attack = power_attack # Установка силы атаки героя при создании объекта
def attack(self, enemy):
print(f"Герой {self.name} атакует героя {enemy.name}") # Вывод информации о текущей атаке
enemy.hp = enemy.hp - self.power_attack # Уменьшение здоровья противника на силу атаки текущего героя
def show_hp(self):
print(f'Здоровье героя {self.name}: {self.hp}') # Вывод текущего здоровья героя
def __str__(self):
return f"Объект класса {self.__class__.__name__}\nатрибуты-переменные объекта {self.__dict__}"
hero1 = Hero(name="Batman", hp=100, power_attack=15) # Создание объекта hero1 с определенными значениями атрибутов
hero2 = Hero(name="Odisey", hp=120, power_attack=12) # Создание объекта hero2 с определенными значениями атрибутов
hero1.show_hp() # Вывод здоровья героя hero1
hero2.show_hp() # Вывод здоровья героя hero2
hero1.attack(enemy=hero2) # Атака героя hero1 на героя hero2
hero2.attack(enemy=hero1) # Атака героя hero2 на героя hero1
hero1.show_hp() # Вывод обновленного здоровья героя hero1
hero2.show_hp() # Вывод обновленного здоровья героя hero2