import pygame

# Klasa pomocnicza Obraz
class Obraz(pygame.sprite.Sprite):
    def __init__(self, sciezka):
        super().__init__()
        self.obraz = pygame.image.load(sciezka)
        self.obraz = self.ustaw_przezroczystosc(self.obraz)

    def ustaw_przezroczystosc(self, obraz):
        # Ustawienie koloru (255, 0, 0) jako przezroczysty
        obraz.set_colorkey((255, 0, 0))  # Kolor 255,0,0 będzie przezroczysty
        return obraz

# Klasa bazowa
class Element():
    def __init__(self, typ):
        # Wskaźnik wybranego elementu ubioru
        self.wybrany = 0
        # Lista obrazów
        self.lista_obrazow = []
        # Użycie pętli, aby załadować wszystkie obrazy z folderu
        for i in range(1, 4):
            sciezka = f'images/{typ}{i}.png'
            wczytany_obraz = Obraz(sciezka)
            self.lista_obrazow.append(wczytany_obraz)

    def wybierzNastepny(self):
        self.wybrany += 1
        if self.wybrany > 2:
            self.wybrany = 0
    
    def wybranyObraz(self):
        return self.lista_obrazow[self.wybrany].obraz


class NakrycieGlowy(Element):
    def __init__(self):
        super().__init__('head')


class UbranieElement(Element):
    def __init__(self):
        super().__init__('body')


class OczyElement(Element):
    def __init__(self):
        super().__init__('eye')


class BronElement(Element):
    def __init__(self):
        super().__init__('weapon')
