Files
Naked-Desire/Source/NakedDesire/Items/SexToyInstance.h
T
2026-05-29 22:13:09 +03:00

38 lines
842 B
C++

#pragma once
#include "CoreMinimal.h"
#include "ItemInstance.h"
#include "SexToyItem.h"
#include "SexToyInstance.generated.h"
/** Per-instance mutable state for sex toys. */
USTRUCT()
struct FSexToyInstanceState : public FItemInstanceState
{
GENERATED_BODY()
UPROPERTY(SaveGame)
bool bActive = false;
UPROPERTY(SaveGame)
float Battery = 1.0f;
};
UCLASS()
class NAKEDDESIRE_API USexToyInstance : public UItemInstance
{
GENERATED_BODY()
public:
USexToyItem* GetSexToyItem() const { return Cast<USexToyItem>(ItemDefinition); }
protected:
virtual void CaptureState(FInstancedStruct& OutState) const override;
virtual void ApplyState(const FInstancedStruct& InState) override;
UPROPERTY(BlueprintReadOnly, Category = "Sex Toy")
bool bActive = false;
UPROPERTY(BlueprintReadOnly, Category = "Sex Toy")
float Battery = 1.0f;
};