feat(SP): New buildings data assets
This commit is contained in:
parent
a5a89443de
commit
39ecb1df11
@ -0,0 +1,3 @@
|
|||||||
|
//
|
||||||
|
|
||||||
|
#include "DataAssets/RRDADataAssetSolarPower.h"
|
@ -70,6 +70,8 @@ void URRDADataAssetSubsystem::StartScanForDataAssets() {
|
|||||||
ReCacheDSItemFilters();
|
ReCacheDSItemFilters();
|
||||||
ReCacheDSModAdapterDataAssets();
|
ReCacheDSModAdapterDataAssets();
|
||||||
ReCacheDSAdapterCoversDataAssets();
|
ReCacheDSAdapterCoversDataAssets();
|
||||||
|
|
||||||
|
ReCacheSolarPowerDataAssets();
|
||||||
}
|
}
|
||||||
|
|
||||||
void URRDADataAssetSubsystem::ReCacheDirtDataAssets() {
|
void URRDADataAssetSubsystem::ReCacheDirtDataAssets() {
|
||||||
@ -236,6 +238,24 @@ void URRDADataAssetSubsystem::ReCacheDSItemFilters() {
|
|||||||
UE_LOGFMT(LogRRDApi, Log, "ReCacheDSItemFilters: {0}", mDSBuildingData.Num());
|
UE_LOGFMT(LogRRDApi, Log, "ReCacheDSItemFilters: {0}", mDSBuildingData.Num());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void URRDADataAssetSubsystem::ReCacheSolarPowerDataAssets()
|
||||||
|
{
|
||||||
|
mSolarPowerAssets.Empty();
|
||||||
|
TSet<URRDADataAssetSolarPower*> DataAssets;
|
||||||
|
|
||||||
|
if (FindAllDataAssetsOfClass(DataAssets)) {
|
||||||
|
for (URRDADataAssetSolarPower* DataAsset : DataAssets) {
|
||||||
|
fgcheckf(DataAsset->mInput.ItemClass, TEXT("SolarPowerDataAsset %s has no ItemClass"), *DataAsset->GetPathName());
|
||||||
|
|
||||||
|
if (!mSolarPowerAssets.Contains(DataAsset)) {
|
||||||
|
mSolarPowerAssets.AddUnique(DataAsset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
UE_LOG(LogRRDApi, Log, TEXT("ReCacheSolarPowerDataAssets: %d"), mSolarPowerAssets.Num());
|
||||||
|
}
|
||||||
|
|
||||||
int32 URRDADataAssetSubsystem::GetAllDirtItems(TArray<TSubclassOf<UFGItemDescriptor>>& Items) const {
|
int32 URRDADataAssetSubsystem::GetAllDirtItems(TArray<TSubclassOf<UFGItemDescriptor>>& Items) const {
|
||||||
if (!mDirtAssets.Num()) {
|
if (!mDirtAssets.Num()) {
|
||||||
UE_LOG(LogRRDApi, Error, TEXT("No Dirts found!"));
|
UE_LOG(LogRRDApi, Error, TEXT("No Dirts found!"));
|
||||||
@ -516,3 +536,8 @@ TArray<URRDAHeaterDataAsset*> URRDADataAssetSubsystem::GetAllHeaterAssets(ERRDAH
|
|||||||
|
|
||||||
return Assets;
|
return Assets;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TArray<URRDADataAssetSolarPower*> URRDADataAssetSubsystem::GetAllSolarPowerAssets() const
|
||||||
|
{
|
||||||
|
return mSolarPowerAssets;
|
||||||
|
}
|
||||||
|
@ -0,0 +1,32 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "CoreMinimal.h"
|
||||||
|
#include "RRDADataAssetBase.h"
|
||||||
|
#include "ItemAmount.h"
|
||||||
|
|
||||||
|
#include "RRDADataAssetSolarPower.generated.h"
|
||||||
|
|
||||||
|
UCLASS( BlueprintType )
|
||||||
|
class REFINEDRDAPI_API URRDADataAssetSolarPower : public URRDADataAssetBase
|
||||||
|
{
|
||||||
|
GENERATED_BODY()
|
||||||
|
|
||||||
|
public:
|
||||||
|
/**
|
||||||
|
* Fuel item that this uses
|
||||||
|
*/
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SolarPower")
|
||||||
|
FItemAmount mInput;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* What this produces
|
||||||
|
*/
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SolarPower")
|
||||||
|
FItemAmount mOutput;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* What the min heat is needed to produce
|
||||||
|
*/
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SolarPower")
|
||||||
|
float mMinHeatValue = 0.0f;
|
||||||
|
};
|
@ -15,6 +15,7 @@
|
|||||||
#include "DataAssets/RRDACoolerDataAsset.h"
|
#include "DataAssets/RRDACoolerDataAsset.h"
|
||||||
#include "DataAssets/RRDADataAssetDSItemFilter.h"
|
#include "DataAssets/RRDADataAssetDSItemFilter.h"
|
||||||
#include "DataAssets/RRDADataAssetDSModAdapter.h"
|
#include "DataAssets/RRDADataAssetDSModAdapter.h"
|
||||||
|
#include "DataAssets/RRDADataAssetSolarPower.h"
|
||||||
#include "Enums/RRDARPEnums.h"
|
#include "Enums/RRDARPEnums.h"
|
||||||
#include "Resources/FGItemDescriptor.h"
|
#include "Resources/FGItemDescriptor.h"
|
||||||
|
|
||||||
@ -103,6 +104,7 @@ public:
|
|||||||
void ReCacheDSModAdapterDataAssets();
|
void ReCacheDSModAdapterDataAssets();
|
||||||
void ReCacheDSAdapterCoversDataAssets();
|
void ReCacheDSAdapterCoversDataAssets();
|
||||||
void ReCacheDSItemFilters();
|
void ReCacheDSItemFilters();
|
||||||
|
void ReCacheSolarPowerDataAssets();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Dirt Functions
|
// Dirt Functions
|
||||||
@ -211,6 +213,9 @@ public:
|
|||||||
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|RP|MP")
|
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|RP|MP")
|
||||||
TArray<URRDAHeaterDataAsset*> GetAllHeaterAssets(ERRDAHeaterType Type) const;
|
TArray<URRDAHeaterDataAsset*> GetAllHeaterAssets(ERRDAHeaterType Type) const;
|
||||||
|
|
||||||
|
UFUNCTION(BlueprintPure, Category = "RRDA|DataAsset|RP|Solar")
|
||||||
|
TArray<URRDADataAssetSolarPower*> GetAllSolarPowerAssets() const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* Find all data assets of a specific class
|
* Find all data assets of a specific class
|
||||||
@ -242,6 +247,9 @@ public:
|
|||||||
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
|
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
|
||||||
TMap<ERRDAHeaterType, FRRDADataHolderHeaterData> mHeaterAssets;
|
TMap<ERRDAHeaterType, FRRDADataHolderHeaterData> mHeaterAssets;
|
||||||
|
|
||||||
|
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
|
||||||
|
TArray<URRDADataAssetSolarPower*> mSolarPowerAssets;
|
||||||
|
|
||||||
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
|
UPROPERTY(BlueprintReadOnly, Category = "RRDA|DataAsset")
|
||||||
TSet<URRDADataAssetBase*> mDisabledDataAssets;
|
TSet<URRDADataAssetBase*> mDisabledDataAssets;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user