데브허브 | DEVHUB | How to Make Attack in Unity with C# for Beginners | Unity 6How to Make Attack in Unity with C# for Beginners | Unity 6
- 플레이어의 자식 오브젝트로 'attack point'를 생성하여 공격의 원점을 설정합니다. 🎯
Physics2D.OverlapCircle 함수를 사용하여 특정 반경 내의 적 게임 오브젝트를 감지합니다. ⭕
- 공격 지점(Transform), 공격 반경(float), 타겟 레이어(LayerMask)를 스크립트 내에 필수 변수로 정의합니다. ⚙️
- 적 게임 오브젝트에 'Enemy'와 같은 특정 레이어를 할당하여
OverlapCircle의 타겟 대상을 지정합니다. 🎭
- 공격 애니메이션 클립의 특정 시점에 공격 함수를 호출하도록 애니메이션 이벤트를 추가합니다. 🎬
OnDrawGizmosSelected 함수를 활용하여 에디터에서 공격 범위를 시각적으로 표시하고, 색상을 설정할 수 있습니다. 🎨
attackPoint가 할당되지 않았을 경우 OnDrawGizmosSelected에서 발생할 수 있는 널 참조 에러를 방지하기 위해 널 체크 로직을 추가합니다. 🚫
- 마우스 왼쪽 버튼 클릭 시 공격 애니메이션을 재생하도록 입력 시스템을 설정하여 공격을 트리거합니다. 🖱️
- 초기에는 콘솔에 'damage enemy' 메시지를 출력하지만, 최종적으로는 감지된 적 게임 오브젝트를 파괴하는 로직으로 대체하여 실제 공격 효과를 구현합니다. 💥