import random def rzut_k6(ile_razy): return [random.randint(1, 6) for nr_rzutu in range(ile_razy)] class Bron: def __init__(self, nazwa, ile_kosci, sukces_od, obrazenia): self.nazwa = nazwa self.ile_kosci = ile_kosci self.sukces_od = sukces_od self.obrazenia = obrazenia def opis(self): print(self) def __str__(self): tekst = "" tekst += f"Jestem obiektem klasy {self.__class__.__name__}\n" tekst += f"Nazywam się {self.nazwa}\n" tekst += f"Aby trafić, wyrzuć co najmniej {self.sukces_od} oczek\n" tekst += f"Zadaję {self.obrazenia} obrażeń\n" return tekst class Bohater: # tutaj mamy blad! def __init__(self, imie, zycie=3, doswiadczenie=0, ekwipunek=[]): self.imie = imie self.zycie = zycie self.doswiadczenie = doswiadczenie self.ekwipunek = ekwipunek def okrzyk_bojowy(self): print("Jesień średniowiecza!") def podnies(self, przedmiot): self.ekwipunek.append(przedmiot) print(f"Oho, mam {przedmiot.nazwa}.") def pokaz_co_masz(self): print(f"Ekwipunek {self.imie}:") for i, przedmiot in enumerate(self.ekwipunek): print(f" {i+1}. {przedmiot.nazwa}") def atak(self): if len(self.ekwipunek) == 0: return 0 wybrana_bron = self.ekwipunek[0] rzuty_ataku = rzut_k6(ile_razy=wybrana_bron.ile_kosci) udane = [rzut > wybrana_bron.sukces_od for rzut in rzuty_ataku] return udane class Szwendacz: def __init__(self): self.zycie = 1 self.zadawane_obrazenia = 1 self.doswiadczenie_za_zabicie = 1 def przedstaw_sie(self): print(f"Jestem {self.__class__.__name__}") print(f"Mam {self.zycie} punktow zycia.") print(f"Jak cie dorwe, zadam {self.zadawane_obrazenia} obrazen.") print( f"Jak mnie dorwiesz, zyskasz {self.doswiadczenie_za_zabicie} doswiadczenia." ) class Spaslak: def __init__(self): self.zycie = 2 self.zadawane_obrazenia = 1 self.doswiadczenie_za_zabicie = 1 def przedstaw_sie(self): print(f"Jestem {self.__class__.__name__}") print(f"Mam {self.zycie} punktow zycia.") print(f"Jak cie dorwe, zadam {self.zadawane_obrazenia} obrazen.") print( f"Jak mnie dorwiesz, zyskasz {self.doswiadczenie_za_zabicie} doswiadczenia." ) class Abominacja: def __init__(self): self.zycie = 3 self.zadawane_obrazenia = 1 self.doswiadczenie_za_zabicie = 5 def przedstaw_sie(self): print(f"Jestem {self.__class__.__name__}") print(f"Mam {self.zycie} punktow zycia.") print(f"Jak cie dorwe, zadam {self.zadawane_obrazenia} obrazen.") print( f"Jak mnie dorwiesz, zyskasz {self.doswiadczenie_za_zabicie} doswiadczenia." )