언리얼/게임 프로젝트

GameplayAbilitySystem을 이용한 RPG 프로젝트 - (17) 지정한 시간마다 적용되는 Gamplay Effect

monstro 2024. 12. 12. 20:55
728x90
반응형

GameplayEffect의 경우 다음과 같이 3개로 정의할 수 있습니다.

 

1) Instant GE

Current Value와 Base Value 중에서 Base Value에 영향을 주는 GE입니다.

이 변화는 영구적으로 Base Value에 적용됩니다.

 

2) Duration 또는 Infinite GE

Current Value와 Base Value 중에서 Current Value에 영향을 주는 GE입니다.

GE가 끝나면 해당 변화는 사라지게 됩니다.

 

3) Period GE

Current Value와 Base Value 중에서 Base Value에 영향을 주는 GE입니다.

지정한 Period마다 GE를 Base Value에 영구히 적용하게 됩니다.

 

1) Period GE

이번에 알아볼 GE는 바로 Period GE입니다.

Period GE의 경우 period가 0.0이라면 period GE처럼 동작하지 않습니다.

즉, Duration이나 Inifinite GE처럼 휘발성이 있는 GE로 동작하게 됩니다.

 

하지만 0을 초과한 값을 설정하게 되면

매 period 마다 해당 GE를 적용하게 됩니다.

 

만약 Duration을 설정하였다면,

Period GE는 설정한 Duration 까지 매 period 마다 GE를 적용하게 됩니다.

Inifinite를 설정하였다면,

Period GE는 영구히 매 period 마다 GE를 적용하게 됩니다.

 

Period GE의 옵션 중에서

Execute Periodic Effect on Application 옵션을 체크하면 GE가 즉시 적용됩니다.

만약 체크하지 않았다면 period 후GE를 적용하게 됩니다.

 

그렇다면 기존의 GE를 수정하여 Period GE를 만들고 또 새로운 Period GE를 만들어보겠습니다.

2) 언리얼 에디터

 

기존의 MaxHealth를 늘려주던 GE를 위와 같이 수정하였습니다.

2초까지 0.1초 동안 Health를 1씩 회복하게 됩니다.

Execute Periodic Effect on Application 옵션은 꺼주어 즉시 적용되는 것은 막겠습니다.

 

 

이번에는 새로운 Period GE를 만들어보았습니다.

2초까지 0.1초 동안 Mana를 1씩 회복하게 됩니다.

마찬가지로 Execute Periodic Effect on Application를 꺼주어 즉시 적용은 막겠습니다.

728x90
반응형