#pragma once

#include "CoreMinimal.h"
#include "CoreBaseUserWidget.h"
#include "EPlayerRole.h"
#include "ChallengeViewData.h"
#include "CoreChallengeIconWidget.generated.h"

class UDBDImage;

UCLASS(Blueprintable, EditInlineNew)
class DBDUIVIEWSCORE_API UCoreChallengeIconWidget : public UCoreBaseUserWidget
{
	GENERATED_BODY()

protected:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(BindWidgetOptional))
	UDBDImage* ChallengeIcon;

protected:
	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent)
	void UpdateVisuals(EPlayerRole Role);

public:
	UFUNCTION(BlueprintCallable)
	void SetChallengeData(const FChallengeViewData& challengeData);

public:
	UCoreChallengeIconWidget();
};

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