class Postava: def __init__(self,jmeno,hp): self.jmeno = jmeno self._hp = hp self.max_hp = hp def __str__(self): return f"Postava {self.jmeno} | Hp: {self._hp}/{self.max_hp}" #DEDIČNOST: Kouzelník JE Postav, ale umí něco navíc class Kouzelnik(Postava): def __init__(self, jmeno, hp, mana): #super() -> zavolá __init__ z rodičovské třídy # vyřídí za nás jméno a životy. My jen přidáme manu pro kouzelníka super().__init__(jmeno, hp) self.mana = mana def sesli_kouzlo(self,cena_many=10): if self.mana >=cena_many: self.mana -= cena_many print(f"{self.jmeno} sesílá kouzlo! (Mana:{self.mana})") def __str__(self): zakladni_text = super().__str__() return f"{zakladni_text} | Mana: {self.mana}" print("---Vytvoření kouzelníka a Postavy---") gandalf = Kouzelnik("Gandalf",250,100) print(gandalf) gimli = Postava("Gimli",80) print(gimli) print("---Akce kouzelníka---") gandalf.sesli_kouzlo(20) print(gandalf)