/// <summary> /// 更新grid /// </summary> private void UpdateTotemGrid() { //图腾列表 m_lstCityWarTotem = m_cityWarManger.CityWarTotemList; for (int i = 0; i < m_grid_TotemGridRoot.transform.childCount; i++) { Transform ts = m_grid_TotemGridRoot.transform.GetChild(i); UICityWarFightTotemGrid grid = ts.gameObject.GetComponent <UICityWarFightTotemGrid>(); if (grid == null) { grid = ts.gameObject.AddComponent <UICityWarFightTotemGrid>(); } grid.SetGridData(m_lstCityWarTotem[i]); grid.RegisterUIEventDelegate(OnTotemGridUIEvent); grid.gameObject.SetActive(true); if (m_lstCityWarTotem[i].clanId != 0) { grid.SetClanName(m_lstCityWarTotem[i].clanName); } else { grid.SetClanName("中立"); } } }
private void OnTotemGridUIEvent(UIEventType eventType, object data, object param) { if (eventType == UIEventType.Click) { UICityWarFightTotemGrid grid = data as UICityWarFightTotemGrid; if (grid == null) { return; } IMapSystem mapSys = ClientGlobal.Instance().GetMapSystem(); IController ctrl = ClientGlobal.Instance().GetControllerSystem().GetActiveCtrl(); if (ctrl != null && mapSys != null) { ctrl.MoveToTarget(new UnityEngine.Vector3(grid.CityWarTotemData.pos.x, 0, -grid.CityWarTotemData.pos.y)); } } }