コード例 #1
0
ファイル: UIWindow.cs プロジェクト: vcan/CapsUnity
    public virtual void Update()            //更新
    {
        if (m_state == EffectState.Delay)
        {
            if (Time.realtimeSinceStartup - m_delayStartTime > Delay)                         //若Delay时间已到
            {
                m_state             = EffectState.Showing;                                    //切显示特效状态
                m_curStateStartTime = Timer.GetRealTimeSinceStartUp();
                m_delayStartTime    = 0;
                gameObject.SetActive(true);                                                   //把自己显示出来
                DoShowEffect();                                                               //播放显示特效
            }
        }

        if (m_state == EffectState.Showing && !IsPlaying())     //若显示特效状态已经结束
        {
            m_state             = EffectState.Idle;             //进入Idle状态
            m_curStateStartTime = Timer.GetRealTimeSinceStartUp();
            DoIdleEffect();                                     //播放Idle状态特效
        }

        if (m_finishedFunc != null && m_state == EffectState.Hiding && !IsPlaying())      //播放结束响应
        {
            UIWindow.WindowEffectFinished func = m_finishedFunc;
            m_finishedFunc = null;
            func();
        }
    }
コード例 #2
0
ファイル: UIWindow.cs プロジェクト: vcan/CapsUnity
 public virtual void HideEffect(UIWindow.WindowEffectFinished finishedFunc = null)        //隐藏时的特效
 {
     m_state             = EffectState.Hiding;
     m_curStateStartTime = Timer.GetRealTimeSinceStartUp();
     DoHideEffect();
     m_finishedFunc = finishedFunc;
 }
コード例 #3
0
 public void SetFunc(UIWindow.WindowEffectFinished func)
 {
     m_finishedFunc = func;
 }
コード例 #4
0
 public void SetFunc(UIWindow.WindowEffectFinished func)
 {
     m_finishedFunc = func;
 }