Example #1
0
    public void ShowChunk()
    {
        BlockServiceProvider provider = BlockServiceProvider.instance;

        for (int x = 0; x < m_Size; x++)
        {
            for (int y = 0; y < m_Size; y++)
            {
                BigBlock block = provider.GetBlockFromPool();
                block.EnableBlock(m_Data[x, y]);
                m_CachedBlocks.Push(block);
            }
        }
    }
Example #2
0
    public void HideChunk()
    {
        BlockServiceProvider provider = BlockServiceProvider.instance;

        BigBlock[] blocks = m_CachedBlocks.ToArray();
        int        x      = 0;
        int        y      = -1;

        for (int i = 0; i < blocks.Length; i++)
        {
            y++;
            if (y > m_Size)
            {
                y = -1; x++;
            }

            m_Data[x, y] = blocks[i].DisableBlock();
            provider.AddToPool(blocks[i]);
        }
        m_CachedBlocks.Clear();
    }
Example #3
0
 // Use this for initialization
 void Awake()
 {
     instance    = this;
     m_BlockPool = new Stack <BigBlock>();
 }