示例#1
0
    private void UpdateGrid(eBATTLE_ALLY Ally, short nStartPosIndex, BATTLE_POS_GRID kPosGrid)
    {
        List <NmBattleGrid> list = this.GetBattleGridList(Ally, nStartPosIndex);

        if (list == null)
        {
            return;
        }
        if (list.Count != kPosGrid.m_veBUID.Length)
        {
            KeyValuePair <eBATTLE_ALLY, int> key = new KeyValuePair <eBATTLE_ALLY, int>(Ally, (int)nStartPosIndex);
            Transform child = NkUtil.GetChild(this.mRoot.transform, string.Format("GRID{0}_{1}", (int)Ally, nStartPosIndex));
            if (child != null)
            {
                UnityEngine.Object.Destroy(child.gameObject);
            }
            this.m_BattlePosGrid.Remove(key);
            this.m_BattlePosGridSize.Remove(key);
            list = new List <NmBattleGrid>();
            GameObject gameObject = TBSUTIL.Attach(string.Format("GRID{0}_{1}", (int)Ally, nStartPosIndex), this.mRoot);
            for (int i = 0; i < kPosGrid.mListPos.Length; i++)
            {
                Vector3      pos          = kPosGrid.mListPos[i];
                short        bUID         = kPosGrid.m_veBUID[i];
                NmBattleGrid nmBattleGrid = NmBattleGrid.Create(Ally, nStartPosIndex, bUID, pos, i);
                nmBattleGrid.gameObject.transform.parent = gameObject.transform;
                list.Insert(list.Count, nmBattleGrid);
            }
            this.m_BattlePosGridSize.Add(key, new Vector2((float)kPosGrid.m_nWidthCount, (float)kPosGrid.m_nHeightCount));
            this.m_BattlePosGrid.Add(key, list);
            return;
        }
        for (int i = 0; i < list.Count; i++)
        {
            NmBattleGrid nmBattleGrid2 = list[i];
            if (!(nmBattleGrid2 == null))
            {
                nmBattleGrid2.SetBUID(kPosGrid.m_veBUID[i]);
            }
        }
    }
示例#2
0
    private void Insert(eBATTLE_ALLY Ally, short nStartPosIndex, BATTLE_POS_GRID kPosGrid)
    {
        KeyValuePair <eBATTLE_ALLY, int> key = new KeyValuePair <eBATTLE_ALLY, int>(Ally, (int)nStartPosIndex);

        if (this.m_BattlePosGrid.ContainsKey(key))
        {
            this.UpdateGrid(Ally, nStartPosIndex, kPosGrid);
            return;
        }
        List <NmBattleGrid> list       = new List <NmBattleGrid>();
        GameObject          gameObject = TBSUTIL.Attach(string.Format("GRID{0}_{1}", (int)Ally, nStartPosIndex), this.mRoot);

        for (int i = 0; i < kPosGrid.mListPos.Length; i++)
        {
            Vector3      pos          = kPosGrid.mListPos[i];
            short        bUID         = kPosGrid.m_veBUID[i];
            NmBattleGrid nmBattleGrid = NmBattleGrid.Create(Ally, nStartPosIndex, bUID, pos, i);
            nmBattleGrid.gameObject.transform.parent = gameObject.transform;
            list.Insert(list.Count, nmBattleGrid);
        }
        this.m_BattlePosGridSize.Add(key, new Vector2((float)kPosGrid.m_nWidthCount, (float)kPosGrid.m_nHeightCount));
        this.m_BattlePosGrid.Add(key, list);
    }