コード例 #1
0
ファイル: GenericPool.cs プロジェクト: sethunath3/Bomberman
        public void ReturnItem(T returnItem)
        {
            PooledItem <T> item = poolList.Find(i => i.item.Equals(returnItem));

            if (item != null)
            {
                item.isItemUsed = false;
            }
        }
コード例 #2
0
ファイル: GenericPool.cs プロジェクト: sethunath3/Bomberman
        public T GetItem()
        {
            if (poolList.Count > 0)
            {
                PooledItem <T> item = poolList.Find(i => i.isItemUsed == false);
                if (item != null)
                {
                    item.isItemUsed = true;
                    return(item.item);
                }
            }
            PooledItem <T> newPoolItem = new PooledItem <T>();

            newPoolItem.isItemUsed = true;
            newPoolItem.item       = CreateNewPooledItem();
            poolList.Add(newPoolItem);
            return(newPoolItem.item);
        }