private void Update() { if (particle.IsAlive() == false) { GameObjectPool.Recycle(gameObject); } }
public override void Dispose() { if (this.IsDisposed) { return; } base.Dispose(); GameObjectPool gameObjectPool = Game.Scene.GetComponent <GameObjectPool>(); foreach (Unit unit in this.m_IdUnits.Values) { gameObjectPool.Recycle(unit); } gameObjectPool.Recycle(MyUnit); this.m_IdUnits.Clear(); Instance = null; }
public override void Dispose() { if (this.IsDisposed) { return; } base.Dispose(); #if SERVER foreach (var VARIABLE in ChildrenUnit) { VARIABLE.Dispose(); } #elif !SERVER GameObjectPool gameObjectPool = Game.Scene.GetComponent <GameObjectPool>(); foreach (var VARIABLE in ChildrenUnit) { gameObjectPool.Recycle(VARIABLE); } #endif ChildrenUnit.Clear(); }
private IEnumerator Delay() { yield return(new WaitForSeconds(delay)); GameObjectPool.Recycle(gameObject); }