for (TObjectIterator<UStaticMeshComponent> It; It; ++It)
{
UStaticMeshComponent* StaticMeshComponent = *It;
if (StaticMeshComponent && StaticMeshComponent->GetWorld() == World && !StaticMeshComponent->ComponentTags.
Contains(ResourceRouletteTag))
{
if (const UStaticMesh* StaticMesh = StaticMeshComponent->GetStaticMesh())
{
FName MeshPath = FName(*StaticMesh->GetPathName());
if (MeshesToDestroy.Contains(MeshPath))
{
StaticMeshComponent->SetActive(false);
StaticMeshComponent->SetVisibility(false);
StaticMeshComponent->DestroyComponent();
}
}
}
}
for (TObjectIterator<UStaticMeshComponent> It; It; ++It)
{
UStaticMeshComponent* StaticMeshComponent = *It;
if (StaticMeshComponent && StaticMeshComponent->GetWorld() == World && !StaticMeshComponent->ComponentTags.
Contains(ResourceRouletteTag))
{
if (const UStaticMesh* StaticMesh = StaticMeshComponent->GetStaticMesh())
{
FName MeshPath = FName(*StaticMesh->GetPathName());
if (MeshesToDestroy.Contains(MeshPath))
{
StaticMeshComponent->SetActive(false);
StaticMeshComponent->SetVisibility(false);
StaticMeshComponent->DestroyComponent();
}
}
}
}