private void OnCollisionEnter(Collision collision) { if (collision.gameObject.CompareTag("floor")) { poolable.Despawn(); } }
public void DespawnObject(IPoolable obj) { if (obj == null) { return; } if (!this._objectPool.Contains(obj)) { return; } obj.Despawn(); }
public void Despawn(IPoolable poolable) { if (poolable == null) { return; } var poolableType = poolable.GetType(); poolable.Despawn(); if (Spawned.ContainsKey(poolableType) && Spawned[poolableType].Contains(poolable)) { Spawned[poolableType].Remove(poolable); Despawned[poolableType].Add(poolable); } poolable.OnDespawn(); }
public void DespawnObject(IPoolable obj) { obj.Despawn(); }
IEnumerator Coroutine_Despawn() { yield return(new WaitForSeconds(despawnDelayTime)); poolable.Despawn(); }