/** * Cleans up deleted Entry's components. Need to do it separately * to avoid freeing Components while other observers are processing * the removal of an entity. */ public void clean() { if (deletedEntities.size > 0) { for (Entity entity : deletedEntities) { removeComponentsOfEntity(entity); } deletedEntities.clear(); } cleanRemovedComponents(); }