예제 #1
0
class Knight:
    def __init__(self, max_hp: int) -> None:
        self.__max_hp = max_hp
        self.__hp = max_hp
        self.__arms = Hand()

    @property
    def max_hp(self) -> int:
        return self.__max_hp

    @property
    def hp(self) -> int:
        return self.__hp

    @property
    def arms(self):
        return self.__arms

    @arms.setter
    def arms(self, value: Arms):
        self.__arms = value

    @property
    def defense(self) -> int:
        return 0

    def attack(self, obj: Knight):
        obj.__hp = obj.__hp - max(self.__arms.attack_power() - self.defense, 0)
예제 #2
0
class Knight:
    def __init__(self, max_hp: int) -> None:
        self.__max_hp = max_hp
        self.__hp = max_hp
        self.__arms = Hand()

    @property
    def max_hp(self) -> int:
        return self.__max_hp

    @property
    def hp(self) -> int:
        return self.__hp

    @property
    def arms(self):
        return self.__arms

    @arms.setter
    def arms(self, value: Arms):
        self.__arms = value

    def attack_power(self) -> int:
        return self.__arms.attack_power()