/// <summary> /// 初始化grid /// </summary> void InitGridList() { m_lstTargetGrid.Clear(); for (int i = 0; i < m_grid_SelectTargetGridRoot.transform.childCount; i++) { Transform ts = m_grid_SelectTargetGridRoot.transform.GetChild(i); UISelectTargetGrid grid = ts.gameObject.GetComponent <UISelectTargetGrid>(); if (grid == null) { grid = ts.gameObject.AddComponent <UISelectTargetGrid>(); } m_lstTargetGrid.Add(grid); //添加拖拽组件 UIDragObject dragObj = ts.gameObject.GetComponent <UIDragObject>(); if (dragObj == null) { dragObj = ts.gameObject.AddComponent <UIDragObject>(); } dragObj.target = m_trans_SelectTarget.transform; } //添加拖拽组件 UIDragObject dragObjBg = m_sprite_SelectTargetBg.gameObject.GetComponent <UIDragObject>(); if (dragObjBg == null) { dragObjBg = m_sprite_SelectTargetBg.gameObject.AddComponent <UIDragObject>(); } }
private void OnSelectTargetGridUIEvent(UIEventType eventType, object data, object param) { if (eventType == UIEventType.Click) { UISelectTargetGrid grid = data as UISelectTargetGrid; if (grid == null) { return; } if (param == null) { SetSelectGrid(grid.m_playerId); SelectTargetChange(grid.m_playerId); //移动到目标附近 //MoveToTarget(grid.m_playerId); } else { int btnIndex = (int)param; if (btnIndex == 2) { if (m_lstLockEnemyId.Contains(grid.m_playerId)) { grid.SetLock(false); m_lstLockEnemyId.Remove(grid.m_playerId); } else { grid.SetLock(true); if (m_lstLockEnemyId.Count < 5) { m_lstLockEnemyId.Add(grid.m_playerId); } } } } } }
/// <summary> /// 选中grid /// </summary> /// <param name="id"></param> void SetSelectGrid(uint id) { if (id == this.m_selectEnemyId) { return; } UISelectTargetGrid grid = GetSelectTargetGrid(this.m_selectEnemyId); if (grid != null) { grid.SetSelect(false); } grid = GetSelectTargetGrid(id); if (grid != null) { grid.SetSelect(true); } this.m_selectEnemyId = id; }