Exemple #1
0
        public override void Process()
        {
            currentStep++;

            float   t   = (float)currentStep / (float)stepCount;
            Vector3 pos = path.GetStep(t);

            setValue(pos);

            if (currentStep < stepCount)
            {
                return;
            }

            AnimationList.Remove(this);
            RaiseAnimationFinishedEvent();
        }
        public override void Process()
        {
            float value = getValue();

            //Debug.WriteLine ("Anim: {0} <= {1}", value, this.ToString ());

            if (Step > 0f)
            {
                value += Step;
                setValue(value);
                //Debug.WriteLine(value);
                if (TargetValue > value)
                {
                    return;
                }
            }
            else
            {
                value += Step;
                setValue(value);

                if (TargetValue < value)
                {
                    return;
                }
            }

            if (Cycle)
            {
                Step        = -Step;
                TargetValue = initialValue;
                Cycle       = false;
                return;
            }

            setValue(TargetValue);
            lock (AnimationList)
                AnimationList.Remove(this);

            RaiseAnimationFinishedEvent();
        }
        public override void Process()
        {
            T value = getValue();

            //Debug.WriteLine ("Anim: {0} <= {1}", value, this.ToString ());

            if (Operator.GreaterThan(Step, zero))
            {
                value = Operator.Add(value, Step);
                setValue(value);
                //Debug.WriteLine(value);
                if (Operator.GreaterThan(Operator.Subtract(TargetValue, value), zero))
                {
                    return;
                }
            }
            else
            {
                value = Operator.Add(value, Step);
                setValue(value);

                if (Operator.LessThan(Operator.Subtract(TargetValue, value), zero))
                {
                    return;
                }
            }

            if (Cycle)
            {
                Step        = Operator.Negate(Step);
                TargetValue = initialValue;
                Cycle       = false;
                return;
            }

            setValue(TargetValue);
            AnimationList.Remove(this);

            RaiseAnimationFinishedEvent();
        }