언리얼 개인 프로젝트/언리얼 블루프린트

언리얼 몬스터 스킬 설정

현구구 2022. 7. 23. 02:04

먼저 몬스터 블루프린트에서 skillTime이라는변수를 추가한다

몬스터 블루프린트에서 몬스터의 상태를 변경하기 위해 MonsterState 열거형 변수로가서 변수를 하나 추가한다 이름은 skillAttack

노드를 다음과 같이 연결하면 skillTime이 10초를 넘겼을 때 몬스터의 상태가 skillAttack이 되고 스킬 사용하는 애니메이션을 실행하게 된다.

이 연결한 노드는 하나의 커스텀 이벤트로 만들어 준다(다른 곳에서도 쓰이기 때문)

이 부분인데 공격 애니메이션이 끝나고 몬스터에게 플레이어를 쫓아가던지 아니면 공격하던지 명령을 내려주는 부분에 거리가 플레이어와 가깝다면 방금 생성한 이벤트 노드를 연결해서 공격을 하라고 명령을 내린다.

이제 시간이 지남에 따라 생성한 변수 skill time값을 증가시켜주는 커스텀 이벤트를 생성한다.

노드를 이런식으로 연결하면 1초가 지날때마다 skilltime이 1씩 증가하며 마지막에 동일한 커스텀 이벤트 노드를 연결해서 무한반복하도록 하였다. 이제 skillTime변수가 10이 되면 몬스터가 스킬을 사용할 것이다.

만들어진 Start Attack 이벤트는 몬스터가 공격할 거리에 닿았을 때,

그리고 공격 애니메이션이 끝났을 때 공격 범위 안에 들어있다면 실행해준다.

그리고 몬스터가 스킬을 사용하면 skillTime값을 다시 0으로 맞춰줘서 스킬 쿨타임을 초기화 시켜준다.

다음과 같이 10초가 지나면 몬스터가 스킬 공격하는 모습이다