public BlockEntity GetBlockerEntity(LevelBlock block) { switch (block.blockerType) { case BlockerType.bubble: return(bubbleBlockerPool.GetObj().GetComponent <BlockEntity>()); case BlockerType.radiation: return(radiationBlockerPool.GetObj().GetComponent <BlockEntity>()); } return(null); }
public BlockEntity GetBlockEntity(LevelBlock block) { if (block is LevelBlockType) { var type = (LevelBlockType)block; switch (type.type) { case BlockType.empty: { return(empty.GetObj().GetComponent <BlockEntity>()); } case BlockType.red: { return(redBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.orange: { return(orangeBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.yellow: { return(yellowBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.green: { return(greenBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.blue: { return(blueBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.purple: { return(purpleBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.random: { int random = Random.Range(0, GameMgr.G.availableColors.Count); ColorType colorType = GameMgr.G.availableColors[random]; ObjectPool temp = null; switch (colorType) { case ColorType.red: temp = redBlockPool; break; case ColorType.orange: temp = orangeBlockPool; break; case ColorType.yellow: temp = yellowBlockPool; break; case ColorType.green: temp = greenBlockPool; break; case ColorType.blue: temp = blueBlockPool; break; case ColorType.purple: temp = purpleBlockPool; break; } return(temp.GetObj().GetComponent <BlockEntity>()); } case BlockType.bubble: { return(bubbleBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.can: { return(canBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.paper: { return(paperBlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.box1: { return(box1BlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.box2: { return(box2BlockPool.GetObj().GetComponent <BlockEntity>()); } case BlockType.radiation: { return(radiationBlockPool.GetObj().GetComponent <BlockEntity>()); } } } else if (block is LevelBoosterType) { var type = (LevelBoosterType)block; switch (type.type) { case BoosterType.arrow: return(arrowBombPool.GetObj().GetComponent <BlockEntity>()); case BoosterType.bomb: return(bombPool.GetObj().GetComponent <BlockEntity>()); case BoosterType.rainbow: return(rainbowPool.GetObj().GetComponent <BlockEntity>()); } } return(null); }