Я занимаюсь разработкой небольшой игры, и у меня есть класс с именем CardOnBattle
, который наследует класс CardOnHand
. CardOnHand
имеет несколько параметров, те, которые мне нужны в этой задаче, унаследованы от класса с именем Card
, и это: power
и damage
.
CardOnBattle
инициализируется парой дополнительных параметров: power_after_modifiers
, damage_after_modifiers
и attack_after_modifiers
. Теперь я хочу установить значения по умолчанию power_after_modifiers
и damage_after_modifiers
для параметров power
и damage
, унаследованных от Card
соответственно.
Как мне это сделать?
class Card:
def __init__(self, power, damage, stars, level, name, ability,
clan):
if is_valid_power(power):
self.power = power
else:
self.power = 0
if is_valid_damage(damage):
self.damage = damage
else:
self.damage = 0
if is_valid_stars(stars):
self.stars = stars
else:
self.stars = 0
if is_valid_level(level):
self.level = level
else:
self.level = 0
self.name = name
self.ability = ability
self.clan = clan
class CardOnHand(Card):
def __init__(self, bonus=None, has_been_used=False):
self.bonus=bonus
self.has_been_used=has_been_used
class CardOnBattle(CardOnHand):
def __init__(self, attack_after_modifiers,
power_after_modifiers, damage_after_modifiers):
self.power_after_modifiers = power_after_modifiers
self.damage_after_modifiers = damage_after_modifiers
self.attack_after_modifiers = attack_after_modifiers