이전 글에서는 무기 장착을 위한 WeaponComponent 구현을 정리하면서,무기 자체와 무기 장착 관리를 분리한 내용을 정리했다.이번에는 그 다음 단계로 CombatComponent를 구현한 내용을 정리해보려고 한다.WeaponComponent가 “현재 어떤 무기를 들고 있는가”를 관리한다면,CombatComponent는 “현재 어떤 전투 행동을 할 수 있는가”를 판단하는 역할을 담당한다.처음에는 근접 공격, 원거리 공격, 재장전, 회피 같은 전투 로직을각각의 컴포넌트에서 바로 처리해도 되지 않을까 생각했다.하지만 구현을 진행하다 보니 전투 행동에는 공통적으로 관리해야 하는 상태가 있었다.공격 중인지재장전 중인지회피 중인지피격 경직 상태인지상호작용 중인지사망 상태인지이런 상태를 각각의 컴포넌트가 따로..