/* * void OnTriggerEnter(Collider enteredCollider) { * if (enteredCollider.CompareTag("Kill Zone")) { * ReturnToPool(); * } * } */ public T GetPooledInstance <T>() where T : PooledObject { if (!poolInstanceForPrefab) { poolInstanceForPrefab = ObjectPool.GetPool(this); } return((T)poolInstanceForPrefab.GetObject()); }
public static List <GameObject> GetOwnersObjectsOfType(int ownerId, string name) { var g = ObjectPool.GetPool(name, PoolType.Local).GetPlayerObjects(ownerId); g.AddRange(ObjectPool.GetPool(name, PoolType.PhotonView).GetPlayerObjects(ownerId)); g.AddRange(ObjectPool.GetPool(name, PoolType.RPC).GetPlayerObjects(ownerId)); return(g); }
public static void Delete(GameObject g) { if (ObjectPool.objectPool.LogFull) { Debug.Log("Deleting " + g.name); } PoolToken token = ObjectPool.GetPoolToken(g); Pool myPool = ObjectPool.GetPool(token.poolPrefabString, token.poolType); myPool.StoreObject(g); }
public static GameObject Instantiate(InstantiationData i) { if (ObjectPool.objectPool.LogFull) { Debug.Log("Instantiating " + i.PrefabPath); } Pool myPool = ObjectPool.GetPool(i.PrefabPath, i.PoolType); var g = myPool.GetObject(i); return(g); }