private void Update()
 {
     Fsm.Update();
     UiCardMovement.Update();
     UiCardRotation.Update();
     UiCardScale.Update();
 }
        //--------------------------------------------------------------------------------------------------------------

        #region Unity Callbacks

        private void Awake()
        {
            //components
            MyTransform = transform;
            MyCollider  = GetComponent <Collider>();
            MyRigidbody = GetComponent <Rigidbody>();
            MyInput     = GetComponent <IMouseInput>();
            Hand        = transform.parent.GetComponentInChildren <IUiCardHand>();
            MyRenderers = GetComponentsInChildren <SpriteRenderer>();
            MyRenderer  = GetComponent <SpriteRenderer>();

            //transform
            UiCardScale    = new UiCardScale(this);
            UiCardMovement = new UiCardMovement(this);
            UiCardRotation = new UiCardRotation(this);


            //fsm
            Fsm = new UiCardHandFsm(MainCamera, CardConfigsParameters, this);
        }
 public void MoveTo(Vector3 position, float speed, float delay)
 {
     UiCardMovement.Execute(position, speed, delay);
 }