public GameObject GetPooledOrb(Vector3 spawnPos, int fallDist, ORB_VALUE val) { foreach (GameObject o in pooledOrbs) { if (!o.activeInHierarchy) { Orb orb = isOrb(o); o.SetActive(true); orb.setInitValues(spawnPos, fallDist, val); return(o); } } GameObject obj = Orb.Create(spawnPos, fallDist, val).gameObject; pooledOrbs.Add(obj); return(obj); }