VagabondRose-Plugins/Plugins/VRGAS/Source/VRGAS/Public/VRGASUtils.h

34 lines
1.0 KiB
C++

// Copyright
#pragma once
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "VRGASUtils.generated.h"
class UGameplayAbility;
class UGameplayEffect;
class UAbilitySystemComponent;
/**
*
*/
UCLASS()
class VRGAS_API UVRGASUtils : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintCallable, Category = "Utils|Ability System")
static void BatchGrantAbilities(const TArray<TSubclassOf<UGameplayAbility>>& InAbilitiesToGrant,
UAbilitySystemComponent* InAbilitySystemComponent,
int32 ApplyLevel, bool bDebugLog = false);
UFUNCTION(BlueprintCallable, Category = "Utils|Ability System")
static bool ApplyEffectToTarget(AActor* Target, TSubclassOf<UGameplayEffect> GameplayEffectClass, UObject* SourceObject, float Level = 1.f);
UFUNCTION(BlueprintCallable, Category = "Utils|Ability System")
static bool ApplyEffectToTargetASC(UAbilitySystemComponent* Target, TSubclassOf<UGameplayEffect> GameplayEffectClass, UObject* SourceObject, float Level = 1.f);
};