Esempio n. 1
0
 public void SetDesiredYPosition(float start, float finish, float transitionTime = 1.5f)
 {
     yWorker = new EasingWorker(
               Easings.EaseOutQuint,
               value =>
               {
                   Position = new Vector2f(Position.X, (float)value);
               },
               transitionTime,
               start,
               finish);
 }
Esempio n. 2
0
 public void SetDesiredXPosition(float start, float finish, float transitionTime = 1.5f)
 {
     xWorker = new EasingWorker(
                Easings.EaseInOutCirc,
                value =>
                {
                    Position = new Vector2f((float)value, Position.Y);
                },
                transitionTime,
                start,
                finish);
 }
Esempio n. 3
0
        public void OnUpdate(float deltaT)
        {
            if (!IsAlive)
            {
                xWorker = null;

                return;
            }

            if (timeAlive > Duration - TransitionTime && !easeOutStarted)
            {
                SetDesiredXPosition(Position.X, initialPosition.X);

                easeOutStarted = true;
            }

            xWorker.OnUpdate(deltaT);

            yWorker?.OnUpdate(deltaT);

            timeAlive += deltaT;

            visual.OnUpdate(deltaT);
        }