// © 2025 Naked People Team. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "NakedDesire/MissionBuilder/MissionGoal.h" #include "NakedDesire/Player/PrivateBodyPartType.h" #include "FlashGoal.generated.h" class ANPCAIController; /** * */ UCLASS(EditInlineNew) class NAKEDDESIRE_API UFlashGoal : public UMissionGoal { GENERATED_BODY() UPROPERTY(EditDefaultsOnly, meta = (ClampMin = 1)) int RequiredFlashCount = 1; UPROPERTY(EditDefaultsOnly) EPrivateBodyPartType BodyType; FDelegateHandle PlayerNoticedHandle; UPROPERTY() TSet NoticedActors; public: virtual void Init(ANakedDesireCharacter* PlayerCharacter) override; virtual void Complete() override; virtual FText GetDescription() const override; private: void OnPlayerNoticed(ANPCAIController* NPC); };