private IEnumerator PlayEffect(EffectEntry entry) { var t = flyEffect.GetChild(matrialDataSource.GetItemIndex(curMatrial.PropItem)); entry.go = PerfectInstantiate(t?.gameObject); entry.go.SafeSetActive(true); yield return(new WaitForSeconds(0.9f)); entry.go1 = PerfectInstantiate(feedEffect?.gameObject); entry.go1.SafeSetActive(true); if (entry.levelUp) { entry.levelUpEffect = PerfectInstantiate(levelUpEffect?.gameObject); entry.levelUpEffect.SafeSetActive(true); } yield return(new WaitForSeconds(3)); entry.Destory(); effectEntryList.Remove(entry); }