40 lines
1.3 KiB
C++
40 lines
1.3 KiB
C++
// Fill out your copyright notice in the Description page of Project Settings.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "LuaOverriderInterface.h"
|
|
#include "Abilities/GameplayAbility.h"
|
|
#include "PW_Ability.generated.h"
|
|
|
|
/**
|
|
*
|
|
*/
|
|
UCLASS()
|
|
class BUSYRABBIT_API UPW_Ability : public UGameplayAbility, public ILuaOverriderInterface{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPW_Ability();
|
|
|
|
public:
|
|
virtual FString GetLuaFilePath_Implementation() const override;
|
|
|
|
virtual void ApplyCost(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo) const override;
|
|
|
|
UFUNCTION(BlueprintNativeEvent)
|
|
void BP_ApplyCost(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo& ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo)const;
|
|
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly, DisplayName = "默认的Effect配置")
|
|
TSubclassOf<UGameplayEffect> DefaultEffectConfig;
|
|
|
|
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly, DisplayName = "技能的Effect配置")
|
|
TMap<FGameplayTag, TSubclassOf<UGameplayEffect>> EffectConfigs;
|
|
|
|
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly, DisplayName = "技能的Effect配置")
|
|
TMap<FName, TSubclassOf<UGameplayEffect>> AbilityEffectConfigs;
|
|
|
|
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
|
FString LuaFilePath;
|
|
};
|