public override void DoLateUpdate(Attachment attachment) {
     if (!IsConnected(attachment))
         return;
     AttachObject target = GetTarget(attachment);
     AttachObject follower = GetFollower(attachment);
     FollowingAttachStrategyUtility.FollowTarget(target, follower, positionOptions, rotationOptions);
 }
        public override void DoLateUpdate(Attachment attachment)
        {
            AttachObject target = null;

            for (int c = 0; c < GetCategories().Length; c++)
            {
                AttachObjectList.Enumerator e = attachment.objects.GetEnumerator(c);
                while (e.MoveNext())
                {
                    AttachObject follower = e.Current;
                    if (target == null || !follower.isConnected)
                    {
                        target = follower;
                        continue;
                    }
                    FollowingAttachStrategyUtility.FollowTarget(target, follower, positionOptions, rotationOptions);
                    target = follower;
                }
                ;
            }
        }
 protected override void ConnectBoth(AttachObject target, AttachObject follower) {
     FollowingAttachStrategyUtility.FollowTarget(target, follower, positionOptions, rotationOptions);
 }