public void SetAnim(string anim)
 {
     if (anim == animName)
     {
         return;
     }
     if (animMap.ContainsKey(anim))
     {
         animName = anim;
         clip     = animMap[anim];
     }
 }
Пример #2
0
        /// <summary>
        /// Begins or continues playback of an animation.
        /// </summary>
        public void PlayAnimation(string name)
        {
            if (AnimationDictionary.ContainsKey(name) == false)
            {
                return;
            }

            AnimationData animData = AnimationDictionary[name];

            // If this animation is already running, do not restart it.
            if (animData.Column == FrameColumn && FrameCount == animData.Frames)
            {
                return;
            }

            if (animData.Priority < CurrentAnimation.Priority)
            {
                return;
            }

            // Fire completion callbacks
            stoppingAnimation();

            // Start the new animation.
            _currentAnimation = animData;
            FrameColumn       = animData.Column;
            FrameCount        = animData.Frames;
            FrameTime         = animData.Duration / FrameCount;
            bIsLooping        = animData.IsLooping;
            FrameIndex        = 0;

            time = 0;

            _isFirstCall   = false;
            _callbackFired = false;
            _isStopped     = false;
        }