Files
Naked-Desire/Source/NakedDesire/Commissions/Objectives/BareRegionObjective.cpp
T
2026-06-03 15:17:02 +03:00

49 lines
1.4 KiB
C++

// © 2025 Naked People Team. All Rights Reserved.
#include "BareRegionObjective.h"
#include "NakedDesire/Clothing/BodyPart.h"
#define LOCTEXT_NAMESPACE "Commissions.Objectives.BareRegion"
bool UBareRegionObjective::IsConditionMet() const
{
switch (Region)
{
case EBareRegion::Top:
// Chest bare, both lower regions still covered.
return IsPartRevealing(EBodyPart::Boobs)
&& !IsPartRevealing(EBodyPart::Genitals)
&& !IsPartRevealing(EBodyPart::Ass);
case EBareRegion::Bottom:
// Lower half bare, chest still covered.
return IsPartRevealing(EBodyPart::Genitals)
&& IsPartRevealing(EBodyPart::Ass)
&& !IsPartRevealing(EBodyPart::Boobs);
default:
return false;
}
}
FText UBareRegionObjective::GetDescription() const
{
const bool bTimed = RequiredHoldSeconds > 0.0f;
if (Region == EBareRegion::Top)
{
return bTimed
? FText::Format(LOCTEXT("TopTimed", "Stay topless — chest bare, below covered — for {0} seconds"),
FText::AsNumber(FMath::RoundToInt(RequiredHoldSeconds)))
: LOCTEXT("TopInstant", "Go topless — bare your chest while staying covered below");
}
return bTimed
? FText::Format(LOCTEXT("BottomTimed", "Stay bottomless — bare below, chest covered — for {0} seconds"),
FText::AsNumber(FMath::RoundToInt(RequiredHoldSeconds)))
: LOCTEXT("BottomInstant", "Go bottomless — bare below while keeping your chest covered");
}
#undef LOCTEXT_NAMESPACE