/// <summary> Recycles or creates a falling ring as specified </summary> /// <param name="_pos"> Starting position </param> /// <param name="_scale"> Scale </param> /// <param name="_color"> Colour </param> public void SpawnFallingRing(Vector3 _pos, float _scale, Color _color) { GameObject gameObj = RecyclePool.RetrieveOrCreate(RecyclePool.PoolTypes.FallingRing, fallingRingPrefab); FallingRing fallingRing = gameObj.GetComponent <FallingRing>(); fallingRing.Init(_pos, _scale, _color); fallingRings.Add(fallingRing); }
/// <summary> Called from the ring when it hits the ground </summary> /// <param name="_ring"> Ring that just finished falling </param> public void RingFinishedFalling(FallingRing _ring) { RecyclePool.Recycle(RecyclePool.PoolTypes.FallingRing, _ring.gameObject); fallingRings.Remove(_ring); }