using System.Collections; namespace GFGGame { public class ItemDataPool { public static ArrayList _itemDataPool = new ArrayList(); public static ItemData GetItemData(int itemID) { ItemData itemData = null; int poolCount = _itemDataPool.Count; if(poolCount > 0) { int index = poolCount - 1; itemData = _itemDataPool[index] as ItemData; _itemDataPool.RemoveAt(index); } else { itemData = new ItemData(); } itemData.id = itemID; return itemData; } public static void ResycleItemData(ItemData itemData) { itemData.Reset(); _itemDataPool.Add(itemData); } } }