프로그래밍 공부
작성일
2024. 3. 11. 17:59
작성자
WDmil
728x90

에니메이션의 노티파이와 몽타주를 사용해서 일정 키가 입력되었을 때, 구르기 또는 백스텝이 작동하도록 한다.


BP_Player

점핑 입력에서, 현재 상태값을 받아오고, 전투상태일 경우, BackStep에, 아닐경우 점프가 동작하도록 정의한다.

 

현재 함수는 롤링도 같이 적혀있지만, 구르기는 좌측 Alt를 눌렀을 때 동작하도록 정의하였다.


Enum재정의

State의 ENum에 Dash를 추가한다. 항상 모든  상태값은 Idle일 때만 동작하게 됨으로, Dash를 추가하여 Dash중 Dash가 2번이상 동작하지 않도록 막아준다.

 

이때, 두번이상의 Dash를 추가하고 싶다면, 변수를 추가해서 Dash를 제어해주자.


BP_Player

BP_Player에서 정의된 커스텀 이벤트 이다.

 

현재 State를 판별하고, Idle일 때만, 백스텝이 동작하도록 해준다.


Roll

 

구르기 입력의 경우, Roll입력이 시작되었을 때, 떨어지는지 확인하고, 떨어지는중 이 아닐경우, 그리고 상태가 Idle일 경우, 공격모드를 해제하고, 현재 객체의 이동방향을 찾은다음, 이동방향대로 회전시킨다.

 

회전시키는 이유는 AttackMode를 사용하였기 때문에, 현재 Yaw가 Cam의 방향으로 고정되어있기 때문이다.

이동방향대로 회전시키면 이동하는 방향으로 구르게 된다.

 

정의된 이후에는 Dash로 Idle을 바꾸어주고, 몽타주를 실행한다.

 

AttackMode를 true로 바꾸어주는건 노티파이에서 제어한다.

 


End_Roll_Notify

 

구르기가 종료되었을 때, 객체의 현제 상태값을 확인하고, 무장중일 경우, True로 바꾸어주고 무장중이 아닐경우 AttackMode를 False로 유지한다. 아니면, False일 때, 동작하지 않아도 무방하다.

 

그리고 State를 Idle로 바꾸어, 다음 행동이 가능하도록 해준다.


테스트

728x90