コード例 #1
0
    protected virtual void Update()
    {
        if (!_destroyOnNotalive && !_hasFinishedNotify)
        {
            return;
        }

        if (Time.time - _lastCheckTime < 1f)
        {
            return;
        }
        _lastCheckTime = Time.time;

        if (!IsAlive())
        {
            if (_hasFinishedNotify)
            {
                _playFinishNotify(this);
                _playFinishNotify  = null;
                _hasFinishedNotify = false;
            }
            if (_destroyOnNotalive)
            {
                EffectFactory.DestroyEffect(this);
            }
        }
    }
コード例 #2
0
 /// <summary>
 /// 销毁Effect
 /// </summary>
 /// <param name="effect"></param>
 private void DestroyEffect(Effect effect)
 {
     effect.Restore();
     DestroyEffectObject(effect.EffectObject);
     EffectFactory.DestroyEffect(effect);
 }