public void Release() { if (mPoolData) { mPoolData.Release(); } }
IEnumerator DoDespawn() { if (despawnStartDelay > 0f) { yield return(new WaitForSeconds(despawnStartDelay)); } if (animator && !string.IsNullOrEmpty(takeDespawn)) { animator.Play(takeDespawn); while (animator.isPlaying) { yield return(null); } } else { yield return(null); } mRout = null; if (releaseAfterDespawn) { if (mPoolCtrl) { mPoolCtrl.Release(); } else { M8.PoolController.ReleaseAuto(gameObject); } } else { stateControl.state = despawnAfterState; } }