0. 개요
처음 게임을 실행하면 체력과 마나를 최대 체력과 최대 마나와 동일한 값을 가지도록 초기화한다.
1.
(1) 설계
게임을 시작하자마자 최대 체력과 최대 마나가 설정되는 것이 아니기 때문에 값을 정확히 알기가 어렵다.
따라서 최대 체력과 최대 마나를 Initialize 하는 부분을 찾아, 최대 체력과 최대 마나가 초기화된 이후에 즉각적인 게임플레이 이펙트(Instant Gameplay Effect)를 적용하여 체력과 마나를 고정하도록 한다.
(2) 코드 - AuraCharacterBase
UPROPERTY(BlueprintReadOnly, EditAnywhere, Category = "Attributes")
TSubclassOf<UGameplayEffect> DefaultPrimaryAttributes;
UPROPERTY(BlueprintReadOnly, EditAnywhere, Category = "Attributes")
TSubclassOf<UGameplayEffect> DefaultSecondaryAttributes;
UPROPERTY(BlueprintReadOnly, EditAnywhere, Category = "Attributes")
TSubclassOf<UGameplayEffect> InitializeVitalAttributes;
void AAuraCharacterBase::InitializeDefaultAttributes() const
{
ApplyEffectToSelf(DefaultPrimaryAttributes, 1.f);
ApplyEffectToSelf(DefaultSecondaryAttributes, 1.f);
ApplyEffectToSelf(InitializeVitalAttributes, 1.f);
}
(3) 게임플레이 이펙트 생성
체력과 마나를 초기화하는 게임플레이 이펙트를 생성한다.
생성 이후 BP_AuraCharacter로 이동하여 클래스를 등록한다.
'UE 5 스터디 > Gameplay Ability System(GAS)' 카테고리의 다른 글
7-2. 속성 메뉴 UI - (2) 속성 메뉴 수정, 버튼 만들기 (0) | 2024.09.06 |
---|---|
7-1. 속성 메뉴 UI - (1) 기본 위젯 생성 (0) | 2024.09.06 |
6-6. 커스텀 수정자 크기 계산(MMC) - (2) MMC 생성, 게임플레이 이펙트에 적용 (1) | 2024.09.05 |
6-5. 커스텀 수정자 크기 계산(MMC ; Modifier Magnitude Calculation) - (1) 정의, 레벨 개념 추가 (0) | 2024.09.04 |
6-4. 2차 속성(Secondary Attributes), 파생된 속성(Derived Attributes) (2) | 2024.09.04 |