예제 #1
0
 public virtual void OnEndOut(ObjectTransitorEventArgs e)
 {
     if (m_endOut != null)
     {
         m_endOut(this, e);
     }
 }
예제 #2
0
 public virtual void OnStartOut(ObjectTransitorEventArgs e)
 {
     if (m_startOut != null)
     {
         m_startOut(this, e);
     }
 }
예제 #3
0
 public override void OnStartIn(ObjectTransitorEventArgs e)
 {
     base.OnStartIn(e);
     if (m_TransitionCoroutine != null)
     {
         StopCoroutine(m_TransitionCoroutine);
     }
     m_TransitionCoroutine = StartCoroutine(ToggleActiveEnumerator(true, m_delay));
 }
예제 #4
0
        private IEnumerator ToggleActiveEnumerator(bool toggle, float delay)
        {
            yield return(new WaitForSeconds(delay));

            if (toggle)
            {
                var args = new ObjectTransitorEventArgs();
                OnEndIn(args);
            }
            else
            {
                var args = new ObjectTransitorEventArgs();
                OnEndOut(args);
            }
            gameObject.SetActive(toggle);
        }
예제 #5
0
        public override void OnStartOut(ObjectTransitorEventArgs e)
        {
            base.OnStartOut(e);
            if (m_tweener != null)
            {
                m_tweener.Kill();
            }
            float duration = 0f;

            if (transform.parent)
            {
                duration = ((Vector3)(transform.parent.localToWorldMatrix * (Vector4)(m_originLocalPos - transform.localPosition))).magnitude / m_speed;
            }
            else
            {
                duration = (m_originLocalPos - transform.localPosition).magnitude / m_speed;
            }
            m_tweener = DOTween.To(() => transform.localPosition, (value) => transform.localPosition = value, m_originLocalPos, duration).OnComplete(() =>
            {
                var args = new ObjectTransitorEventArgs();
                OnEndOut(args);
            }).SetDelay(m_delay);
        }
예제 #6
0
 public override void OnEndOut(ObjectTransitorEventArgs e)
 {
     base.OnEndOut(e);
 }
예제 #7
0
        public void OnStartOut()
        {
            var args = new ObjectTransitorEventArgs();

            OnStartOut(args);
        }