본문 바로가기

블루프린팅/10. AI적

[10.AI적업그레이드] 적을 파괴할 수 있게 하기

이전 장에서 Cylinder를 파괴할 수 있게 만든적이 있다 이와 비슷하게 적을 파괴할 수 있게 만들어 보겠다.

1. BP_EnemyCharacter블루프린트를 연다.

2. 변수+를 클릭해 이름을 EnemyHealth로 지정한다. 타입은 인테저 컴파일후 기본값은 3이다.

3. 이벤트그래프 빈공간 우클릭후 Hit 이벤트를 노드를 추가한다. Other출력핀에서 와이어를 끌어 FirstPersonProjectile형변환을 추가한다.

4. FirstPersonProjectile형변환 출력핀에서 Branch를 추가한다. Condition에서 큼(>)노드를 추가한다.

5.  >노드의 상단핀에서 방금만든 GET EnemyHealth를 추가하고 아래입력값을 1로 한다

6. Branch출력핀에서 Decrement Int노드를 추가하고 아래쪽 입력핀을 끌어 EnemyHealth를 추가한다.

7. Branch False에서 폭팔처리를 한다. SpawnActor from Class를 추가하고 Class를 Blueprint_Effect_Explosion클래스를 선택한다. Spawn Transform은 GetActorTransform을 추가 연결해준다.

7.1  SpawnActor 아래 확장을 눌러 Transform Scale Methd를 Override Root로 바꾼다. 교재는 이게 없어 한참헤맸다. 버전의 차이일 수도 있다.

8. 이후 부분은 BP_CylinderTarget 블루프린트와 같으므로 복사해 오겠다.  BP_CylinderTarget 연다 EventHit 맨 오른쪽 부분을 복사한다.

9. SpawnActor 와 Cast To BP_FirstPersonCharacter와 연결하면 끝이다 컴파일 저장해준다

9.1 참고로 BP_CylinderTarget에서 폭발처리는 Spawn Emitter at Location이었다 물론 Template는 P_Explosion으로 설정되어 있어야 한다. 효과모양은 똑같았다.