示例#1
0
        public override void CreateKeyFrame(AnimationClass.AnimationLayer ActiveLayer, int KeyFrame)
        {
            int HighestPreviousKeyFrame;
            int NextKeyFrame;

            GetSurroundingKeyFrames(KeyFrame, out HighestPreviousKeyFrame, out NextKeyFrame);
            VisibleAnimationObjectKeyFrame HighestPreviousKeyFrameObject;

            DicAnimationKeyFrame.TryGetValue(HighestPreviousKeyFrame, out HighestPreviousKeyFrameObject);

            if (HighestPreviousKeyFrame != -1)
            {
                HighestPreviousKeyFrameObject.NextKeyFrame = KeyFrame;
            }

            if (HighestPreviousKeyFrameObject != null)
            {
                AnimationObjectKeyFrame ActiveAnimationSprite = HighestPreviousKeyFrameObject.Copy(ActiveLayer, NextKeyFrame);

                Add(KeyFrame, ActiveAnimationSprite);
            }
            else
            {
                Add(KeyFrame, null);
            }

            NextEventKeyFrame = KeyFrame;
        }
示例#2
0
        public virtual void CreateKeyFrame(AnimationClass.AnimationLayer ActiveLayer, int KeyFrame)
        {
            int HighestPreviousKeyFrame;

            GetSurroundingKeyFrames(KeyFrame, out HighestPreviousKeyFrame, out _);
            AnimationObjectKeyFrame HighestPreviousKeyFrameObject;

            TryGetValue(HighestPreviousKeyFrame, out HighestPreviousKeyFrameObject);

            if (HighestPreviousKeyFrameObject != null)
            {
                AnimationObjectKeyFrame ActiveAnimationSprite = HighestPreviousKeyFrameObject.Copy(ActiveLayer);

                Add(KeyFrame, ActiveAnimationSprite);
            }
            else
            {
                Add(KeyFrame, null);
            }
        }