38 lines
915 B
C++
38 lines
915 B
C++
// Fill out your copyright notice in the Description page of Project Settings.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "ProjectFish/Definations.h"
|
|
#include "UObject/Interface.h"
|
|
#include "SkillEffect.generated.h"
|
|
|
|
|
|
|
|
// This class does not need to be modified.
|
|
UCLASS(BlueprintType)
|
|
class USkillEffect : public UObject
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
void InitSkillEffect(class USkill* skill, FSkillEffectData data);
|
|
virtual void Execute(const FSkillContext& context) ;
|
|
virtual void EffectEnded(const FSkillContext& context);
|
|
TArray<UObject*> GetApplyTargets(const FSkillContext& context);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
virtual FString GetSkillEffectDes();
|
|
FSkillEffectData& GetEffectData()
|
|
{
|
|
return effectData;
|
|
}
|
|
private:
|
|
void GetEffectTargetsByTargetType(const FSkillContext& context, TArray<UObject*>& result);
|
|
protected:
|
|
UPROPERTY()
|
|
class USkill* OwnerSkill;
|
|
FSkillEffectData effectData;
|
|
};
|
|
|