// Copyright Pacificao. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "AgrarianShelterActor.generated.h"

class UBoxComponent;
class UAgrarianPersistentActorComponent;
class UStaticMeshComponent;

UCLASS(Blueprintable)
class AAgrarianShelterActor : public AActor
{
	GENERATED_BODY()

public:
	AAgrarianShelterActor();

	UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Agrarian|Shelter")
	TObjectPtr<UStaticMeshComponent> Mesh;

	UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Agrarian|Shelter")
	TObjectPtr<UBoxComponent> ProtectionVolume;

	UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Agrarian|Shelter")
	TObjectPtr<UAgrarianPersistentActorComponent> PersistentActorComponent;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Agrarian|Shelter", meta = (ClampMin = "0", ClampMax = "1"))
	float WeatherProtection = 0.65f;
};
