private static void GetDirectParticleSystemChildrenRecursive(Transform transform, List<ParticleSystem> particleSystems)
{
IEnumerator enumerator = transform.GetEnumerator();
try
{
while (enumerator.MoveNext())
{
Transform current = (Transform) enumerator.Current;
ParticleSystem component = current.gameObject.GetComponent<ParticleSystem>();
if (component != null)
{
particleSystems.Add(component);
GetDirectParticleSystemChildrenRecursive(current, particleSystems);
}
}
}
finally
{
IDisposable disposable = enumerator as IDisposable;
if (disposable == null)
{
}
disposable.Dispose();
}
}