feat: DS Adapter data assets

This commit is contained in:
mrhid6
2024-11-11 16:47:42 +00:00
parent 31b8963757
commit 4aa2b4ccb0
10 changed files with 185 additions and 5 deletions

View File

@@ -5,6 +5,7 @@
#include "CoreMinimal.h"
#include "RefinedRDApi.h"
#include "AssetRegistry/AssetRegistryModule.h"
#include "Buildables/FGBuildableFactory.h"
#include "DataAssets/RRDADataAssetBase.h"
#include "DataAssets/RRDADirtDataAsset.h"
#include "DataAssets/RRDABoilerDataAsset.h"
@@ -12,6 +13,7 @@
#include "DataAssets/RRDAHeaterDataAsset.h"
#include "DataAssets/RRDATurbineDataAsset.h"
#include "DataAssets/RRDACoolerDataAsset.h"
#include "DataAssets/RRDADataAssetDSModAdapter.h"
#include "Enums/RRDARPEnums.h"
#include "Resources/FGItemDescriptor.h"
@@ -82,6 +84,7 @@ public:
void ReCacheCoolerDataAssets();
void ReCacheHeaterDataAssets();
void ReCacheGeneratorDataAssets();
void ReCacheDSModAdapterDataAssets();
public:
// Dirt Functions
@@ -91,9 +94,19 @@ public:
UFUNCTION(BlueprintCallable, Category = "RRDA|DataAsset|FF")
URRDADirtDataAsset* GetDataForDirtItem(TSubclassOf<UFGItemDescriptor> Item) const;
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|RP|MP")
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|FF")
TArray<URRDADirtDataAsset*> GetAllDirtAssets() const;
// DS Mod Adapter Functions
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|DS")
int32 GetAllModAdapterBuildingClasses(TArray<TSubclassOf<AFGBuildableFactory>>& OutBuildingClasses) const;
UFUNCTION(BlueprintCallable, Category = "RRDA|DataAsset|DS")
URRDADataAssetDSModAdapter* GetModAdapterDataAssetForBuildingClass(TSubclassOf<AFGBuildableFactory> BuildingClass) const;
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|DS")
TArray<URRDADataAssetDSModAdapter*> GetAllModAdapterDataAssets() const;
// Turbine Functions
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|RP|MP")
bool GetAllTurbineItems(TArray<TSubclassOf<UFGItemDescriptor>>& Items, int32 Tier) const;
@@ -171,6 +184,9 @@ public:
public:
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
TMap<TSubclassOf<UFGItemDescriptor>, URRDADirtDataAsset*> mDirtAssets;
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
TMap<TSubclassOf<AFGBuildableFactory>, URRDADataAssetDSModAdapter*> mDSModAdapterAssets;
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
TMap<int32, URRDAGeneratorDataAsset*> mGeneratorAssets;