private void DestroChildAtIndex(EntityManager EntityManager, int index) { if (EntityManager.Exists(children[index])) { if (EntityManager.HasComponent <Childrens>(children[index])) { Childrens childrensChildren = EntityManager.GetComponentData <Childrens>(children[index]); childrensChildren.DestroyEntities(EntityManager); } if (EntityManager.HasComponent <RenderText>(children[index])) { RenderText text = EntityManager.GetComponentData <RenderText>(children[index]); text.DestroyLetters(EntityManager); } EntityManager.DestroyEntity(children[index]); } }
public void DestroyEntities(EntityManager EntityManager) { for (int i = 0; i < children.Length; i++) { if (EntityManager.Exists(children[i])) { if (EntityManager.HasComponent <Childrens>(children[i])) { Childrens childrensChildren = EntityManager.GetComponentData <Childrens>(children[i]); childrensChildren.DestroyEntities(EntityManager); } if (EntityManager.HasComponent <RenderText>(children[i])) { RenderText text = EntityManager.GetComponentData <RenderText>(children[i]); text.DestroyLetters(EntityManager); } EntityManager.DestroyEntity(children[i]); } } if (children.Length > 0) { children.Dispose(); } }