#pragma once

#include "CoreMinimal.h"
#include "CoreBaseUserWidget.h"
#include "UObject/NoExportTypes.h"
#include "CoreMatchmakingReadyMarkerWidget.generated.h"

class UDBDImage;

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

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

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	FLinearColor _emptyColor;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	FLinearColor _joinedColor;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	FLinearColor _readyColor;

public:
	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent)
	void StopVFX();

	UFUNCTION(BlueprintCallable)
	void SetPlayerStatus(const int32 index, const bool isKiller, const bool isReady);

	UFUNCTION(BlueprintCallable)
	void SetKillerOnTop(const bool isKillerOnTop);

	UFUNCTION(BlueprintCallable)
	void Reset();

	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent)
	void PlayVFX();

public:
	UCoreMatchmakingReadyMarkerWidget();
};

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