// © 2025 Naked People Team. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "CommonUserWidget.h" #include "EquipmentPanelWidget.generated.h" class UEquipmentSlotWidget; UCLASS(Abstract) class NAKEDDESIRE_API UEquipmentPanelWidget : public UCommonUserWidget { GENERATED_BODY() public: DECLARE_DELEGATE_OneParam(FOnSlotClicked, UEquipmentSlotWidget*); FOnSlotClicked OnSlotClicked; protected: virtual void NativeConstruct() override; virtual void NativePreConstruct() override; private: UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr NipplesSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr AnalSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr VaginaSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr HeadSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr NeckSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr FaceSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr EyesSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr BodysuitSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr TopSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr BottomSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr UnderwearTopSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr UnderwearBottomSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr SocksSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr FootwearSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr OuterwearSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr WristRestraintSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr AnkleRestraintSlot; UPROPERTY(meta = (BindWidgetOptional)) TObjectPtr NeckRestraintSlot; void HandleSlotClicked(UEquipmentSlotWidget* SlotWidget); void InitSlotTypes(); };