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]); } } }
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); }