코딩 오늘
2023.03.27
마동휘
2023. 3. 28. 00:16
if monster.hp <= 0:
print(f"[{monster.name}]을/를 물리쳤다")
break
몬스터를 물리치면 텍스트가 출력되도록 작성했는데
실상 출력 되지않아서 다음날로 넘긴바 있다 오늘 원인을 찾고자 노력해봤는데
도저히 모르겠다
if attack_type == self.normal_attack:
attack_power = random.randint(self.power - 2, self.power + 2)
공격 위력의 최소 최댓값을 정하는 것은
어제 코드에선 배수라서 적용이 안되는 것같다 라고 작성했는데
실행하였을때 배수여도 실제 값이 적용되는 것을 확인했다
배수가 적용이 안된다고 착각 한 부분은 몬스터의 텍스트 출력 코드에 문제가 있어서 였다
몬스터가 입힌 데미지를 표기하도록 해야하는데 몬스터의 위력이 표시되도록 되어있던것이다
그렇게 수정을 했는데 이번에는 몬스터가 공격을 하지않는 상황이 생겼다
플레이어의 공격 타입은 두가지가 있는데
공격, 던지기 두가지로 실행은 잘된다
`(그외 입력) 은 X라 하자
직접 입력해서 실행되는 방식인데
이 두가지 외의 문자가 입력되면
행동이 불가하다는 텍스트가 발생하고 다시 돌아가게 되도록 설계했다
그런데 몬스터 데미지를 수정하고 나니
X상황일때 플레이어 턴은 넘어가고 몬스터만 공격하는 현상이 발생했다
아무래도 다시 만들어야할것같다