fix: Fixed adapter covers inherited classes
This commit is contained in:
@@ -270,7 +270,21 @@ URRDADataAssetDSAdapterCovers* URRDADataAssetSubsystem::GetDSAdapterCoverDataAss
|
||||
if (!BuildingClass) return nullptr;
|
||||
|
||||
const FRRDADataHolderDSBuildingData* data = mDSBuildingData.Find(BuildingClass);
|
||||
if (data == nullptr) return nullptr;
|
||||
if (data == nullptr) {
|
||||
TArray<TSubclassOf<AFGBuildableFactory>> BuildingClasses;
|
||||
GetAllDSBuildingClasses(BuildingClasses);
|
||||
|
||||
for (TSubclassOf<AFGBuildableFactory> TestBuildingClass : BuildingClasses) {
|
||||
if (BuildingClass->IsChildOf(TestBuildingClass)) {
|
||||
data = mDSBuildingData.Find(TestBuildingClass);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (data == nullptr) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
URRDADataAssetDSAdapterCovers* DataAsset = data->AdapterCovers;
|
||||
if (!DataAsset) return nullptr;
|
||||
|
||||
Reference in New Issue
Block a user