private void CalculateMassRecurse(BoneInfo bone)
{
float mass = bone.anchor.GetComponent<Rigidbody>().mass;
IEnumerator enumerator = bone.children.GetEnumerator();
try
{
while (enumerator.MoveNext())
{
BoneInfo current = (BoneInfo) enumerator.Current;
this.CalculateMassRecurse(current);
mass += current.summedMass;
}
}
finally
{
IDisposable disposable = enumerator as IDisposable;
if (disposable != null)
{
disposable.Dispose();
}
}
bone.summedMass = mass;
}