Ejemplo n.º 1
0
        /// <summary>
        /// Drawing a list of animations and play/stop buttons
        /// </summary>
        private void DrawAnimationsListUI()
        {
            _showAnimations = EditorGUILayout.Foldout(_showAnimations, "Animations");
            if (_showAnimations)
            {
                for (int i = 0; i < Target.Animations.Count; i++)
                {
                    EditorGUILayout.BeginHorizontal();
                    GUI.contentColor = _isPlaying && i == _indexPlaying ? Color.black : Color.white;
                    if (GUILayout.Button("\u25BA", GUILayout.Width(24)))
                    {
                        if (_indexPlaying == i)
                        {
                            _isPlaying = !_isPlaying;
                        }

                        _indexPlaying = i;
                        _currentTrack.Set(Target.Animations[i]);
                    }
                    GUI.contentColor = Color.white;
                    var    currentAnimation = Target.Animations[i];
                    string animationData    = currentAnimation.name + " (" + currentAnimation.frames.Length + " frames)";
                    EditorGUILayout.LabelField(animationData);
                    EditorGUILayout.EndHorizontal();
                }
            }
        }
Ejemplo n.º 2
0
        public bool AddTrack(string animationName, int countRepeat = 1)
        {
            var anim = TargetAnimationObject.data.GetAnimation(animationName);

            if (anim != null)
            {
                var track = new AnimationTrack();
                track.Set(anim);
                for (int i = 0; i < countRepeat; i++)
                {
                    _trackList.Add(track);
                }
                return(true);
            }
            return(false);
        }