#pragma once

#include "CoreMinimal.h"
#include "AIDisplayDebugInterface.h"
#include "UObject/NoExportTypes.h"
#include "PathStrategySelector.generated.h"

class ADBDAIBTController;
class UPathStrategy;

UCLASS(Blueprintable, Abstract)
class DBDBOTS_API UPathStrategySelector : public UObject, public IAIDisplayDebugInterface
{
	GENERATED_BODY()

protected:
	UPROPERTY(EditInstanceOnly, BlueprintReadWrite, Transient)
	ADBDAIBTController* _aiOwner;

	UPROPERTY(EditInstanceOnly, BlueprintReadWrite, Transient)
	TArray<UPathStrategy*> _activePathStrategies;

	UPROPERTY(EditInstanceOnly, BlueprintReadWrite, Transient)
	TArray<UPathStrategy*> _nextPathStrategies;

public:
	UPathStrategySelector();
};

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