#pragma once

#include "CoreMinimal.h"
#include "ChargeableInteractionDefinition.h"
#include "SpecialEventScoreHandler.h"
#include "GameplayTagContainer.h"
#include "FuelGeneratorDamageInteraction.generated.h"

class UAkAudioEvent;

UCLASS(Blueprintable, EditInlineNew, meta=(BlueprintSpawnableComponent))
class UFuelGeneratorDamageInteraction : public UChargeableInteractionDefinition
{
	GENERATED_BODY()

private:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(AllowPrivateAccess=true))
	FSpecialEventScoreHandler _specialEventScoreHandler;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(AllowPrivateAccess=true))
	FName _overriddenUpdateMontageId;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(AllowPrivateAccess=true))
	FName _overriddenExitMontageId;

	UPROPERTY(EditAnywhere)
	TMap<FGameplayTag, UAkAudioEvent*> _canceledSfxBasedOnKiller;

public:
	UFuelGeneratorDamageInteraction();
};

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