186 [
Attribute(
desc:
"List of all entities of the given type (Note that this list can still be used if using the 'SCR_EntityCatalogMultiList' Class. All entries in the multi lists will be merged into this one on init including the entries already in it)")]
211 int GetEntityList(notnull out array<SCR_EntityCatalogEntry> entityList)
219 entityList.Insert(entityEntry);
222 return entityList.Count();
288 if (!entityEntry.HasEditableEntityLabel(label))
316 if (entityEntry.HasEditableEntityLabel(excludinglabel))
346 if (excludedLabels != null && !excludedLabels.IsEmpty() && entityEntry.HasAnyEditableEntityLabels(excludedLabels))
350 if (includedLabels != null && !includedLabels.IsEmpty())
353 if (needsAllIncluded)
355 if (!entityEntry.HasAllEditableEntityLabels(includedLabels))
361 if (!entityEntry.HasAnyEditableEntityLabels(includedLabels))
384 int GetEntityListWithData(
typename dataClass, notnull out array<SCR_EntityCatalogEntry>
filteredEntityList, out array<SCR_BaseEntityCatalogData> dataList = null)
398 data = entityEntry.GetEntityDataOfType(dataClass);
404 dataList.Insert(
data);
422 int GetEntityListExcludingData(
typename excludingDataClass, notnull out array<SCR_EntityCatalogEntry>
filteredEntityList)
431 if (entityEntry.HasEntityDataOfType(excludingDataClass))
452 int GetFullFilteredEntityListWithData(notnull out array<SCR_EntityCatalogEntry>
filteredEntityList, array<typename> includedDataClasses = null, array<typename> excludedDataClasses = null,
bool needsAllIncluded =
true)
461 if (excludedDataClasses != null && !excludedDataClasses.IsEmpty() && entityEntry.HasAnyEntityDataOfTypes(excludedDataClasses))
465 if (includedDataClasses != null && !includedDataClasses.IsEmpty())
468 if (needsAllIncluded)
470 if (!entityEntry.HasAllEntityDataOfTypes(includedDataClasses))
476 if (!entityEntry.HasAnyEntityDataOfTypes(includedDataClasses))
503 int GetFullFilteredEntityList(notnull out array<SCR_EntityCatalogEntry>
filteredEntityList, array<EEditableEntityLabel> includedLabels = null, array<EEditableEntityLabel> excludedLabels = null, array<typename> includedDataClasses = null, array<typename> excludedDataClasses = null,
bool needsAllIncludedLabels =
true,
bool needsAllIncludedClasses =
true)
512 if (excludedLabels != null && !excludedLabels.IsEmpty() && entityEntry.HasAnyEditableEntityLabels(excludedLabels))
516 if (excludedDataClasses != null && !excludedDataClasses.IsEmpty() && entityEntry.HasAnyEntityDataOfTypes(excludedDataClasses))
520 if (includedLabels != null && !includedLabels.IsEmpty())
523 if (needsAllIncludedLabels)
525 if (!entityEntry.HasAllEditableEntityLabels(includedLabels))
531 if (!entityEntry.HasAnyEditableEntityLabels(includedLabels))
537 if (includedDataClasses != null && !includedDataClasses.IsEmpty())
539 if (needsAllIncludedClasses)
541 if (!entityEntry.HasAllEntityDataOfTypes(includedDataClasses))
546 if (!entityEntry.HasAnyEntityDataOfTypes(includedDataClasses))
564 void MergeCatalogs(notnull SCR_EntityCatalog catalogToMerge)
566 array<SCR_EntityCatalogEntry> entityList = {};
567 catalogToMerge.GetEntityList(entityList);
570 foreach(SCR_EntityCatalogEntry entry : entityList)
576 SCR_EntityCatalogMultiList multiListClass = SCR_EntityCatalogMultiList.Cast(catalogToMerge);
579 array <SCR_EntityCatalogMultiListEntry> multiLists = {};
582 foreach (SCR_EntityCatalogMultiListEntry multiList : multiLists)
584 foreach (SCR_EntityCatalogEntry entry : multiList.m_aEntities)
591 catalogToMerge.ClearCatalogOnMerge();
618 GetGame().GetCallqueue().CallLater(PostInitCatalog);
622 protected void PostInitCatalog()
627 entry.PostInitEntry(
this);
If is Enabled return If enabled or disabled *bool IsEnabled()
Get Prefab data return Prefab data *ResourceName GetPrefab()