/// <summary> /// Putting additional tail transform in chain list (added to the end of tail) /// </summary> public TailSegment User_AddTailTransform(Transform transform) { TailSegment newSeg = new TailSegment(transform); TailSegment last = TailSegments[TailSegments.Count - 1]; newSeg.ParamsFromAll(last); newSeg.RefreshFinalPos(newSeg.transform.position); newSeg.RefreshFinalRot(newSeg.transform.rotation); newSeg.ProceduralPosition = newSeg.transform.position; newSeg.PosRefRotation = newSeg.transform.rotation; _TransformsGhostChain.Add(transform); TailSegments.Add(newSeg); last.SetChildRef(newSeg); newSeg.SetParentRef(last); newSeg.SetChildRef(GhostChild); GhostChild.SetParentRef(newSeg); // Resetting indexes for curves for (int i = 0; i < TailSegments.Count; i++) { TailSegments[i].SetIndex(i, TailSegments.Count); } return(newSeg); }