public void TryToSetAngularAbsorbersFromEditorWindow(Transform[] angularAbsorbers, Spring[] angularAbsorbersSprings, AngularAbsorber.Parameters[] angularAbsorberParameters) { int i = 0; if (angularAbsorbers != null) { this.angularAbsorbersParameters = new List <AngularAbsorber.Parameters>(0); this.angularAbsorbers = new List <AngularAbsorber>(0); foreach (var item in angularAbsorbers) { AngularAbsorber aAbsorber = item.gameObject.GetComponent <AngularAbsorber>(); if (!aAbsorber) { aAbsorber = item.gameObject.AddComponent <AngularAbsorber>(); } if (angularAbsorbersSprings != null && i < angularAbsorbersSprings.Length) { Spring spring = angularAbsorbersSprings[i]; if (spring) { aAbsorber.springDetail.TryToSetFromEditorWindow(spring.springDownDetail, spring.springUpDetail, spring.downPivot, spring.upPivot, spring.spring); } } this.angularAbsorbers.Add(aAbsorber); this.angularAbsorbersParameters.Add(angularAbsorberParameters[i]); i++; } } }
void SetAngularAbsorbers() { angularAbsorbersParameters = new List <AngularAbsorber.Parameters>(0); angularAbsorbers = new List <AngularAbsorber>(0); foreach (var item in transform.GetComponentsInChildren <Transform>()) { if (!item.name.Contains("Joint") && item.name.Contains("AngularAbsorber")) { AngularAbsorber aAbsorber = item.gameObject.GetComponent <AngularAbsorber>(); if (!aAbsorber) { aAbsorber = item.gameObject.AddComponent <AngularAbsorber>(); } angularAbsorbers.Add(aAbsorber); angularAbsorbersParameters.Add(aAbsorber.parameters); } } }