protected override void CreateTween()
        {
            Vector3[] newValues = useTransformDestination && destination != null?ArrayExtend.CreateArray(destination.position) : values;

            _tween      = TweensExtend.TranslateTween(container.Component, _valueForTween, isAutoKill, functionEnum, space, mode, curveFactor, newValues);
            curveFactor = _tween.CurveFactor;
        }
        public override void Play(bool setInit = false)
        {
            if (_tween != null)
            {
                Vector3[] newValues = useTransformDestination && destination != null?ArrayExtend.CreateArray(destination.position) : values;

                _tween.FinalValues = ArrayExtend.ConvertNumbersAndVectors <Vector4>(newValues);
            }

            base.Play(setInit);
        }
 public void RemoveContainerIntern(object container)
 {
     object[] containers = ArrayExtend.CreateArray(container);
     RemoveElements(containers);
 }
 public void AddContainerIntern(object container)
 {
     object[] containers = ArrayExtend.CreateArray(container);
     CreateNewElements(containers);
 }
        public DebugVar[] GetMembers(string[] categories)
        {
            List <string>   aux    = new(categories);
            List <DebugVar> result = new();


            var debugPages = ReflectionExtend.CreateDerivedInstances <DebugScreenVarsNative>();

            foreach (var debugPage in debugPages)
            {
                var methods = ReflectionExtend.GetMethodsWithSpecificAttribute <DebugScreenAttribute>(ArrayExtend.CreateArray(debugPage), (DebugScreenAttribute attr) =>
                {
                    return(aux != null && aux.Contains(attr.DebugCategory));
                });

                foreach (var method in methods)
                {
                    var    member = method.Invoke <MemberComplexInfo>();
                    string name   = "";
                    if (member != null)
                    {
                        name = ReflectionExtend.GetValueAttribute(method.methodInfo, (DebugScreenAttribute attr) =>
                        {
                            return(attr.DebugName);
                        });


                        result.Add(new DebugVar(name, member));
                    }
                }
            }

            return(result.ToArray());
        }