// © 2025 Naked People Team. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "CoverageObjectiveBase.h"
#include "BeFullyNakedNearNPCsObjective.generated.h"

// §13.4 BeFullyNakedNearNPCs(count, durationSeconds): fully naked while at least `count` NPCs observe,
// sustained for the duration. Observer count is inherited from UObserverObjectiveBase.
UCLASS(EditInlineNew, DisplayName = "Be Fully Naked Near NPCs")
class NAKEDDESIRE_API UBeFullyNakedNearNPCsObjective : public UCoverageObjectiveBase
{
	GENERATED_BODY()

public:
	virtual FText GetDescription() const override;

protected:
	virtual bool IsConditionMet() const override;

private:
	UPROPERTY(EditDefaultsOnly, meta = (ClampMin = 1))
	int32 RequiredNPCs = 1;
};