void MakeInstance() { if (instance == null) { instance = this; } }
public ItemBase GetAtPool(ItemType itemType) { Stack <ItemBase> stack; if (_itemsPool.TryGetValue(itemType, out stack)) { if (stack.Count > 0) { return(stack.Pop()); } } else { stack = new Stack <ItemBase>(); _itemsPool.Add(itemType, stack); } ItemBase item; switch (itemType) { case ItemType.PowerNormal: item = new ItemPowerNormal(); break; case ItemType.PowerBig: item = new ItemPowerBig(); break; case ItemType.PowerFull: item = new ItemPowerFull(); break; case ItemType.LifeFragment: item = new ItemLifeFragment(); break; case ItemType.Life: item = new ItemLife(); break; case ItemType.BombFragment: item = new ItemBombFragment(); break; case ItemType.Bomb: item = new ItemBomb(); break; default: item = null; break; } return(item); }