public void removeParticleEffects() { ParticleSystem[] systems = GetComponentsInChildren <ParticleSystem>(); for (int i = 0; i < systems.Length; i++) { ParticleEffect eff = systems[i].GetComponent <ParticleEffect>(); if (eff != null) { eff.Detach(); } else { Destroy(systems[i].gameObject); } } }