Пример #1
0
        /// <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);
        }