#pragma once

#include "CoreMinimal.h"
#include "DiminishingReturnBaseEffect.h"
#include "GameplayTagContainer.h"
#include "Templates/SubclassOf.h"
#include "SurvivalistTeamHasteEffect.generated.h"

class UStatusEffect;
class UFloatValueStrategy;

UCLASS(Blueprintable, EditInlineNew, meta=(BlueprintSpawnableComponent))
class CALAMARI_API USurvivalistTeamHasteEffect : public UDiminishingReturnBaseEffect
{
	GENERATED_BODY()

private:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(AllowPrivateAccess=true))
	FGameplayTagContainer _preventingTags;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(AllowPrivateAccess=true))
	TSubclassOf<UStatusEffect> _exhaustedEffectClass;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, Instanced, meta=(AllowPrivateAccess=true))
	UFloatValueStrategy* _exhaustedDuration;

public:
	USurvivalistTeamHasteEffect();
};

FORCEINLINE uint32 GetTypeHash(const USurvivalistTeamHasteEffect) { return 0; }
