// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "TabStructs/BountyTabInfo.h"
#include "TabWidget.h"
#include "EndlessVendetta/BountySystem/BountyClass.h"
#include "BountiesTab.generated.h"

DECLARE_DYNAMIC_MULTICAST_DELEGATE(FTrackBounty);
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FReturnToOpenWorldEarly);
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FTrackSideBounty, int, BountyID);

UCLASS()
class ENDLESSVENDETTA_API UBountiesTab : public UTabWidget
{
	GENERATED_BODY()

// ------------------- ATTRIBUTES ------------------------------

protected:

public:
	UPROPERTY(BlueprintCallable)
	FTrackBounty TrackBountyDelegate;

	UPROPERTY(BlueprintCallable)
	FTrackSideBounty TrackSideBountyDelegate;

	UPROPERTY(BlueprintCallable)
	FReturnToOpenWorldEarly ReturnToOpenWorldEarlyDelegate;

// ------------------- METHODS ---------------------------------
private:
	
protected:

public:
	UFUNCTION(BlueprintImplementableEvent)
    void UpdateBountyTab(FBountyTabInfo BountyTabInfo);
};
