public static void FreeInstance(Ammunition bomb) { BombView bv = bombUsedPool[bomb]; //bv.Hide(); bombUsedPool.Remove(bomb); bombAvailablePool.Push(bv); }
public static BombView GetInstance(Ammunition bomb) { BombView bv = bombAvailablePool.Pop(); bv.ammunition = bomb; bv.postInitOnScene(); bombUsedPool.Add(bomb, bv); return(bv); }
public static void InitPool(int poolSize, IFrameWork framework) { bombAvailablePool = new Stack <BombView>(poolSize); bombUsedPool = new Dictionary <Ammunition, BombView>(poolSize); for (int i = 0; i < poolSize; i++) { BombView dummyView = new BombView(framework); bombAvailablePool.Push(dummyView); } }