// © 2025 Naked People Team. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "ObserverObjectiveBase.h" #include "GatherCrowdObjective.generated.h" // Draw a crowd: at least RequiredObservers NPCs observing the player simultaneously. With // RequiredHoldSeconds > 0 the crowd must hold for that long; 0 = the instant the count is reached. UCLASS(EditInlineNew, DisplayName = "Gather a Crowd") class NAKEDDESIRE_API UGatherCrowdObjective : public UObserverObjectiveBase { GENERATED_BODY() public: virtual FText GetDescription() const override; protected: virtual bool IsConditionMet() const override { return GetObserverCount() >= RequiredObservers; } private: UPROPERTY(EditDefaultsOnly, meta = (ClampMin = 1)) int32 RequiredObservers = 3; };