feat: More options on DS assets

This commit is contained in:
mrhid6 2024-11-12 13:45:38 +00:00
parent 36ef9be1bf
commit d4167cfd88
3 changed files with 45 additions and 7 deletions

View File

@ -17,11 +17,11 @@ class REFINEDRDAPI_API URRDADataAssetDSAdapterCovers : public URRDADataAssetBase
GENERATED_BODY()
public:
/* The building class this adapter cover belongs to */
/* The building class these adapter covers belongs to */
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category="AdapterCovers")
TSubclassOf<AFGBuildableFactory> mBuildableClass;
/* The offsets to place the cover mesh from the buildings origin */
/* An array of covers to place on the buildable connections */
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category="AdapterCovers")
TArray<FRRDADSAdapterOffset> mConnectionOffsets;
TArray<FRRDADSAdapterCoverDetails> mCovers;
};

View File

@ -3,9 +3,9 @@
#include "CoreMinimal.h"
UENUM(BlueprintType)
enum class ERRDADSInventorySlotAccess : uint8
enum class ERRDADSInventorySlotAccessInteraction : uint8
{
None,
Ignore,
ImportToNetworkFromSlot,
ExportFromNetworkToSlot,
};

View File

@ -2,11 +2,12 @@
#include "Enums/RRDADSEnums.h"
#include "Math/Transform.h"
#include "Resources/FGItemDescriptor.h"
#include "RRDADSStructs.generated.h"
USTRUCT(BlueprintType)
struct REFINEDRDAPI_API FRRDADSAdapterOffset
struct REFINEDRDAPI_API FRRDADSAdapterCoverDetails
{
GENERATED_BODY()
@ -20,12 +21,49 @@ public:
bool bIsConveyor = true;
};
USTRUCT(BlueprintType)
struct REFINEDRDAPI_API FRRDADSModAdapterInventorySlotAccess
{
GENERATED_BODY()
public:
/* A custom display name for the inventory slot that will be displayed in the digital storage UI.
This makes it easier for players to understand what this slot is used for.
*/
UPROPERTY(EditDefaultsOnly)
FText mInventorySlotDisplayName;
/* Set how digital storage should interact with this inventory slot */
UPROPERTY(EditDefaultsOnly)
ERRDADSInventorySlotAccessInteraction mInteraction = ERRDADSInventorySlotAccessInteraction::Ignore;
/* Select the item resource form that will be displayed in the digital storage UI
This will only display items of this form when players search for an item.
*/
UPROPERTY(EditDefaultsOnly)
EResourceForm mSlotItemForm = EResourceForm::RF_SOLID;
UPROPERTY( meta=(NoAutoJson = true) )
bool mOverrideItemFilter = false;
/* Limit the list of items this slot should contain, only items in this list will be displayed on the digital storage UI */
UPROPERTY(EditDefaultsOnly, meta=(EditCondition = mOverrideItemFilter))
TArray<TSubclassOf<UFGItemDescriptor>> mItemFilter;
};
USTRUCT(BlueprintType)
struct REFINEDRDAPI_API FRRDADSModAdapterInventoryAccess
{
GENERATED_BODY()
public:
/* A custom name that should be used in the digital storage UI, by default will use "Inventory 1" */
UPROPERTY(EditDefaultsOnly)
FText mInventoryDisplayName;
/* The Inventory Name to search for */
UPROPERTY(EditDefaultsOnly)
FName mInventoryName;
@ -36,5 +74,5 @@ public:
/* The Inventory slots to allow access to Digital Storage */
UPROPERTY(EditDefaultsOnly)
TMap<int, ERRDADSInventorySlotAccess> mInventorySlots;
TMap<int, FRRDADSModAdapterInventorySlotAccess> mInventorySlots;
};