void DestroyShape() { if (shapes.Count > 0) { int index = Random.Range(0, shapes.Count); ShapeManager.Reclaim(shapes[index]); int lastIndex = shapes.Count - 1; shapes[index] = shapes[lastIndex]; shapes.RemoveAt(lastIndex); } }