0. 개요
데이터 에셋 블루프린트를 생성하고 정보를 채워 넣는다.
그리고 이 정보를 활용하여 어빌리티에 업그레이드를 적용한다.
1. 데이터 에셋 블루프린트 생성
(1) 업그레이드 키-값 쌍 생성

게임플레이 어빌리티 태그 당 여러 개의 업그레이드 정보를 가질 수 있다.
(1-1) Native 게임플레이 태그 생성
// 어빌리티 업그레이드 태그(로그라이크)
FGameplayTag Upgrades_Fire_FireBolt_IncreaseNum;
FGameplayTag Upgrades_Arcane_ArcaneShards_IncreaseNum;
FGameplayTag Upgrades_Fire_FireBlast_IncreaseNum;
FGameplayTag Upgrades_Lightning_Teleport_DecreaseCoolDown;
/*
* 어빌리티 업그레이드 태그
*/
GameplayTags.Upgrades_Fire_FireBolt_IncreaseNum = UGameplayTagsManager::Get().AddNativeGameplayTag(
FName("Upgrades.Fire.FireBolt.IncreaseNum"),
FString("Increase Number of FireBolt Projectiles")
);
GameplayTags.Upgrades_Fire_FireBlast_IncreaseNum = UGameplayTagsManager::Get().AddNativeGameplayTag(
FName("Upgrades.Fire.FireBlast.IncreaseNum"),
FString("Increase Number of FireBlast Projectiles")
);
GameplayTags.Upgrades_Arcane_ArcaneShards_IncreaseNum = UGameplayTagsManager::Get().AddNativeGameplayTag(
FName("Upgrades.Arcane.ArcaneShards.IncreaseNum"),
FString("Increase Number of Shards")
);
GameplayTags.Upgrades_Lightning_Teleport_DecreaseCoolDown = UGameplayTagsManager::Get().AddNativeGameplayTag(
FName("Upgrades.Lightning.Teleport.DecreaseCoolDown"),
FString("Decrease Cooldown of Teleport")
);
(2) 게임 모드
드랍 아이템 테이블, 캐릭터 직업 정보, 어빌리티 정보 등을 게임 모드에서 관리하고 있다.
이제 여기에서 어빌리티 업데이트 정보도 관리할 것이다.
(2-1) 어빌리티 데이터 에셋을 들고 있기
UPROPERTY(EditDefaultsOnly, Category="Ability Upgrade Info")
TObjectPtr<UAbilityUpgradeInfo> AbilityUpgradeInfo;

(2-2) 라이브러리에 업그레이드 정보 가져오기 static 함수 추가
// 어빌리티 업그레이드 정보 가져오기
UFUNCTION(BlueprintCallable, category = "AuraAbilitySystemLibrary|AbilityInfo", meta = (DefaultToSelf = "WorldContextObject"))
static UAbilityUpgradeInfo* GetAbilityUpgradeInfo(const UObject* WorldContextObject);
UAbilityUpgradeInfo* UAuraAbilitySystemLibrary::GetAbilityUpgradeInfo(const UObject* WorldContextObject)
{
AAuraGameModeBase* AuraGameMode = Cast<AAuraGameModeBase>(UGameplayStatics::GetGameMode(WorldContextObject));
if (AuraGameMode == nullptr)
return nullptr;
return AuraGameMode->AbilityUpgradeInfo;
}
'UE 5 스터디 > Gameplay Ability System(GAS)' 카테고리의 다른 글
| 32-4. 로그 라이크 - (2) MVVM - (2) 뷰 생성 및 초기화, UI와 게임 연동 (0) | 2025.06.09 |
|---|---|
| 32-3. 로그 라이크 - (2) MVVM - (1) 업그레이드 카드, 카드 선택 UI (0) | 2025.06.09 |
| 32-1. 로그 라이크 - (1) 데이터 에셋 - (1) 어빌리티 업그레이드 (0) | 2025.06.09 |
| 32. 로그 라이크 설계 (0) | 2025.06.09 |
| 31-12. 레벨 디자인 - 맵 이동 제어 - 레벨 블루프린트 (0) | 2025.05.20 |
