Exemplo n.º 1
0
        private IEnumerator ScanChildsAnimations()
        {
            m_AllAnimList = new List <SimpleSpriteOneAnimation> ();

            foreach (Transform child in transform)
            {
                //child is your child transform
                //m_SpritesList.Add (child.gameObject);
                SimpleSpriteOneAnimation _oneAnim = child.transform.GetComponent <SimpleSpriteOneAnimation> ();



                if (_oneAnim != null)
                {
                    m_AllAnimList.Add(_oneAnim);
                }
            }


            m_AllAnimations = new Dictionary <string, SimpleSpriteOneAnimation> ();

            foreach (SimpleSpriteOneAnimation _oneTmp in m_AllAnimList)
            {
                _oneTmp.SetCurrentAnimator(this);
                m_AllAnimations.Add(_oneTmp.transform.name, _oneTmp);
                _oneTmp.gameObject.SetActive(false);
            }

            //_animListTmp.Clear ();


            yield return(null);
        }
Exemplo n.º 2
0
        public void PlayAnimation(string _name)
        {
            if (m_AllAnimations.ContainsKey(_name))
            {
//
//				if (m_CurrentPlaing == m_AllAnimations [_name]) {
//				//same animation
//					return;
//				}


                //HideAllAnimations ();
                m_AllAnimations [_name].gameObject.SetActive(true);
                m_AllAnimations [_name].Play();


                if (m_CurrentPlaying != null && m_CurrentPlaying != m_AllAnimations [_name])
                {
                    //stop previuse, but if playing same, not stop
                    m_CurrentPlaying.Stop(true);
                }

                m_CurrentPlaying = m_AllAnimations [_name];
            }
            else
            {
                Debug.LogError("SimpleSpriteAnimator : PlayAnimation : Anim name = \" " + _name + "\" is not exist in animator  \"" + transform.name + "\". Check childs of this object \"" + transform.name + "\" to exist GameObject as  \"" + _name + "\" ");
            }
        }
Exemplo n.º 3
0
        public void PlayAnimation(string _name, bool freeze = false)
        {
            if (m_AllAnimations.ContainsKey(_name))
            {
                var targetAnim = m_AllAnimations[_name];

                if (m_CurrentPlaing == targetAnim && targetAnim.m_IsPaused == freeze)
                {
                    //same animation
                    return;
                }


                //HideAllAnimations ();
                targetAnim.gameObject.SetActive(true);

                if (freeze)
                {
                    targetAnim.Pause();
                }
                else
                {
                    targetAnim.Play();
                }


                if (m_CurrentPlaing != null && m_CurrentPlaing != m_AllAnimations [_name])
                {
                    //stop previuse, but if playing same, not stop
                    m_CurrentPlaing.Stop(true);
                }

                m_CurrentPlaing = m_AllAnimations [_name];
            }
            else
            {
                Debug.LogError("SimpleSpriteAnimator : PlayAnimation : Anim name = \" " + _name + "\" is not exist in animator  \"" + transform.name + "\". Check childs of this object \"" + transform.name + "\" to exist GameObject as  \"" + _name + "\" ");
            }
        }