from random import randint, choice 

class Postac:
    def __init__(self):
        self.nazwa = ""
        self.zycia = 1 
        self.max_zycie = 1
    def atakuj(self, przeciwnik):

        atak = randint(0,3)

        if atak == 0:
            print(f"{przeciwnik.nazwa} unika ataku {self.nazwa}")
        else:
            print(f"{self.nazwa} atakuje {przeciwnik.nazwa}, zadajac {atak}")
        przeciwnik.zycie -= atak

class przeciwnik(Postac):
    def __init__(self, gracz):
        super().__init__()
        self.nazwa = choice(['goblin', 'szkielet', 'zombi'])
        self.zycie = randint(1, gracz.zycie)

class Gracz(Postac):
    def __init__(self):
        super().__init__()
        self.zycie = 10
        self.max_zycie = 10
        self.nazwa = input('Podaj imie gracza: ')
    def odpoczynek(self):
        if self.zycia < self.max_zycia:
           self.zycia += 1
        print(f"{self.nazwa} odpoczywa, zycie; {self.zycia}/{self.max_zycie}")

    def walka(self, przeciwnik):
        walka = True

        while walka:
            print(f"zycie gracza: {self.zycie}")
            print(f" zycie {przeciwnik.nazwa} : {przeciwnik.zycie}")
            akcja_walka = input('Akcja (atak, uciekaj):')
            if akcja_walka == 'atak':
                self.atakuj(przeciwnik)
                if przeciwnik.zycie <= 0:
                    print(f"{self.nazwa} zabija {przeciwnik.nazwa}")
                    return True
                przeciwnik.atakuj(self)
            elif akcja_walka == 'uciekaj':
                print(f'{self.nazwa} ucieka')
                przeciwnik.atakuj(self)
                walka == False 
            else:
                print('Nieznana akcja')
            if self.zycie <= 0:
                print(f'{self.nazwa} ginie')
                return False
        return True
               
        
        


























