게임에서 적 캐릭터로 등장하는 몬스터를 제어하는 핵심 클래스, 바로 Monster
클래스에 대해 설명드리겠습니다.
이 클래스는 몬스터의 생성, 행동, 체력 표시, 사망 처리 등 게임 내 전투와 밀접한 기능들을 담당하고 있으며, 실제로는 CharacterBase
를 상속받아 캐릭터 공통 기능을 공유합니다.
📚 상속 구조
CharacterStat
└── CharacterBase
└── Monster
즉, Monster
는 스탯 계산, 상태 전환, 애니메이션 제어 등의 공통 로직을 상속받고, 그 위에 몬스터 전용 기능을 추가로 구현한 구조입니다.
🧠 주요 기능 요약
Monster
클래스는 전투 및 게임플레이와 직접적으로 연결된 다음과 같은 기능들을 포함하고 있습니다:
ControllerMonster
를 통해 이동 및 공격 AI를 제어합니다.OnEventAttack()
메서드에서 충돌 영역을 계산하고, 범위 안에 있는 플레이어에게 데미지를 적용합니다.OnDamage()
가 호출되어 자동으로 어그로 상태로 전환되며, 공격자를 추적 대상으로 설정합니다.CreateHpBar()
를 통해 설정됩니다.SetSliderHp()
를 통해 체력바 UI가 실시간으로 갱신됩니다.OnDead()
메서드에서 몬스터가 죽었을 때의 후처리를 수행합니다.