Added commissions system
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
// © 2025 Naked People Team. All Rights Reserved.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "NakedDesire/Clothing/BodyPart.h"
|
||||
#include "ObserverObjectiveBase.h"
|
||||
#include "CoverageObjectiveBase.generated.h"
|
||||
|
||||
class UClothingItemInstance;
|
||||
|
||||
// Shared base for objectives that read body coverage; re-evaluates on any equip / unequip. Inherits
|
||||
// the observer subscription from UObserverObjectiveBase, so coverage objectives can also gate on the
|
||||
// current observer count (e.g. "naked in front of N people") without extra wiring.
|
||||
UCLASS(Abstract)
|
||||
class NAKEDDESIRE_API UCoverageObjectiveBase : public UObserverObjectiveBase
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
protected:
|
||||
virtual void OnActivate() override;
|
||||
virtual void OnDeactivate() override;
|
||||
|
||||
// Fully unclothed: no effective coverage on any of the three exposable regions.
|
||||
bool IsFullyNaked() const;
|
||||
|
||||
// Part reads as "revealing" — below the player's observation reveal threshold.
|
||||
bool IsPartRevealing(EBodyPart Part) const;
|
||||
|
||||
// Any of the three regions is revealing.
|
||||
bool IsAnyPartRevealing() const;
|
||||
|
||||
private:
|
||||
UFUNCTION()
|
||||
void HandleClothingChanged(UClothingItemInstance* ClothingItemInstance);
|
||||
};
|
||||
Reference in New Issue
Block a user