2025-10-17 17:13:13 -04:00
|
|
|
// Copyright Echo Devgroup
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "CoreMinimal.h"
|
|
|
|
|
#include "AbilitySystem/GameplayAbility/AuraGameplayAbility.h"
|
|
|
|
|
#include "AuraProjectileSpell.generated.h"
|
|
|
|
|
|
|
|
|
|
class AAuraProjectile;
|
|
|
|
|
class UGameplayEffect;
|
|
|
|
|
/**
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
UCLASS()
|
|
|
|
|
class AURA_API UAuraProjectileSpell : public UAuraGameplayAbility
|
|
|
|
|
{
|
|
|
|
|
GENERATED_BODY()
|
|
|
|
|
public:
|
|
|
|
|
private:
|
|
|
|
|
protected:
|
|
|
|
|
virtual void ActivateAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, const FGameplayEventData* TriggerEventData) override;
|
|
|
|
|
|
2025-10-18 11:28:42 -04:00
|
|
|
UFUNCTION(BlueprintCallable, Category = "Ability Params")
|
2025-10-17 17:13:13 -04:00
|
|
|
void SpawnProjectile(const FVector ProjectileTargetLocation);
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadOnly)
|
|
|
|
|
TSubclassOf<AAuraProjectile> ProjectileClass;
|
|
|
|
|
|
|
|
|
|
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly)
|
|
|
|
|
TSubclassOf<UGameplayEffect> DamageEffectClass;
|
2025-10-18 11:28:42 -04:00
|
|
|
|
2025-10-17 17:13:13 -04:00
|
|
|
};
|