#pragma once

#include "CoreMinimal.h"
#include "Unhook.h"
#include "S45P03UnhookInteraction.generated.h"

class UChargeableComponent;
class ADBDPlayer;

UCLASS(Blueprintable, EditInlineNew, meta=(BlueprintSpawnableComponent))
class US45P03UnhookInteraction : public UUnhook
{
	GENERATED_BODY()

private:
	UFUNCTION(BlueprintCallable, NetMulticast, Reliable)
	void Multicast_SetChargeableComponent(UChargeableComponent* chargeableComponent, bool isNullAllowed);

protected:
	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent, BlueprintCosmetic)
	void Cosmetic_OnInteractionChargeCompleted(ADBDPlayer* instigator, ADBDPlayer* target);

public:
	US45P03UnhookInteraction();
};

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