턴제 몬스터 만들기 시작 game_max()

요구 사항

– 이름을 입력하여 플레이어를 생성할 수 있어야 합니다.


– 몬스터는 무작위로 생성되어야 합니다.


– while 루프로 종료 조건이 충족될 때까지 턴제 플레이어와 몬스터 간의 전투를 반복해야 합니다.


– 플레이어는 공격 유형을 선택할 수 있어야 합니다.


예) “일반 공격”, “마법 공격”.
– 몬스터는 일반 공격을 사용할 수 있어야 합니다.


– 플레이어 및 몬스터 상태 정보는 각 전투 중에 제공되어야 합니다.


– 모든 공격은 캐릭터의 힘에 따라 무작위로 이루어져야 합니다.


예) 힘이 10일 경우 일반공격은 8~12 사이의 임의의 값으로 공격
– 몬스터나 플레이어의 HP가 0이 되면 전투를 종료하고 승패를 선언해야 합니다.

기본 가이드

1. 시작
– 플레이어 생성(플레이어)
– 성
– PS
-MP
– 성능
– 일반 공격
– 마법의 힘
– 마법 공격
– 몬스터 생성(몬스터)
– 성
– PS
– 일반 공격
2차전
– 몬스터와의 턴제 전투(리플레이 중)
– 플레이어, 몬스터 상태 출력
– 플레이어가 선택한 공격 방식(Normal, Magic)
– 플레이어 공격
– 몬스터 공격
3. 끝
– 승패

알아채다

class Character:
    """
    모든 캐릭터의 모체가 되는 클래스
    """
    def __init__(self, name, hp, power):
        self.name = name
        self.max_hp = hp
        self.hp = hp
        self.power = power

    def attack(self, other):
        damage = random.randint(self.power - 2, self.power + 2)
        other.hp = max(other.hp - damage, 0)
        print(f"{self.name}의 공격!
{other.name}에게 {damage}의 데미지를 입혔습니다.

") if other.hp == 0: print(f"{other.name}이(가) 쓰러졌습니다.

") def show_status(self): print(f"{self.name}의 상태: HP {self.hp}/{self.max_hp}")


여기 other.hp 최대()하나쯤 있을까 싶었는데

파이썬 최대 최소 함수는 두 개 이상의 값을 취하고 그 중 가장 크거나 작은 값을 반환합니다.

목록 튜플또는 도 가능!

배꼽 게임 알아채다의 경우, other.hp 손상그리고 0 더 큰 값을 반환하려면

이는 피해를 입은 HP 값이 음수로 보고되지 않도록 하기 위함입니다.