/// <summary> /// 其他玩法 /// </summary> /// <param name="listNoNeedEnergyData"></param> public void SetNoNeedEnergyGridListData(List <NoNeedEnergyData> listNoNeedEnergyData) { for (int index = 0; index < listNoNeedEnergyData.Count; index++) { if (index < m_mapGrid.Count) { EnergyNoEnoughUIGrid gridUI = m_mapGrid[index]; NoNeedEnergyData gridData = listNoNeedEnergyData[index]; gridUI.LoadResourceInsteadOfAwake(); gridUI.Index = index; gridUI.SetNoNeedEnergyDetail(gridData.title, gridData.icon, gridData.buttonName, gridData.desc, gridData.requestLevel); } } }
/// <summary> /// 设置购买体力活动数据 /// </summary> /// <param name="id"></param> /// <param name="imgName"></param> /// <param name="itemName"></param> public void SetBuyEnergyGridListData(List <BuyEnergyData> listBuyEnergyData) { for (int index = 0; index < listBuyEnergyData.Count; index++) { if (m_mapGrid.ContainsKey(index)) { EnergyNoEnoughUIGrid gridUI = m_mapGrid[index]; BuyEnergyData gridData = listBuyEnergyData[index]; gridUI.LoadResourceInsteadOfAwake(); gridUI.Index = index; gridUI.SetBuyEnergyDetail(gridData.title, gridData.icon, gridData.buttonName, gridData.diamond, gridData.addEnergy); } } }
/// <summary> /// 限时活动 /// </summary> /// <param name="listEnergyLimitActivityData"></param> public void SetLimitActivityGridListData(List <EnergyLimitActivityData> listEnergyLimitActivityData) { for (int index = 0; index < listEnergyLimitActivityData.Count; index++) { if (index < m_mapGrid.Count) { EnergyNoEnoughUIGrid gridUI = m_mapGrid[index]; EnergyLimitActivityData gridData = listEnergyLimitActivityData[index]; gridUI.LoadResourceInsteadOfAwake(); gridUI.Index = index; gridUI.SetLimitActivityDetail(gridData.title, gridData.icon, gridData.buttonName, gridData.limitActivityDesc, gridData.finished); } } }
/// <summary> /// 添加体力不足活动Grid /// </summary> /// <param name="num"></param> /// <param name="act"></param> void AddUIGridList(int num, Action act = null) { ClearUIGridList(); ResetGridListCameraPos(); // 删除翻页位置(滑动形式不需要处理) if (m_dragableCamera.IsMovePage) { if (m_dragableCamera.transformList != null) { for (int i = 0; i < m_dragableCamera.transformList.Count; ++i) { Destroy(m_dragableCamera.transformList[i].gameObject); } m_dragableCamera.transformList.Clear(); } } for (int i = 0; i < num; ++i) { int index = i; AssetCacheMgr.GetUIInstance("EnergyNoEnoughUIGrid.prefab", (prefab, guid, go) => { GameObject obj = (GameObject)go; obj.transform.parent = m_tranUIGridlList; obj.transform.localPosition = new Vector3(0, ITEMSPACEVERTICAL * index, 0); obj.transform.localScale = new Vector3(1f, 1f, 1f); obj.GetComponentsInChildren <MyDragCamera>(true)[0].RelatedCamera = m_gridListCamera; EnergyNoEnoughUIGrid gridUI = obj.AddComponent <EnergyNoEnoughUIGrid>(); if (m_mapGrid.ContainsKey(index)) { AssetCacheMgr.ReleaseInstance(m_mapGrid[index].gameObject); } m_mapGrid[index] = gridUI; // 滑动形式和翻页形式都需要设置 //if (!m_dragableCamera.IsMovePage) { if (index % GRID_COUNT_ONE_PAGE == 0) { GameObject trans = new GameObject(); trans.transform.parent = m_gridListCamera.transform; trans.transform.localPosition = new Vector3(0, index / GRID_COUNT_ONE_PAGE * ITEMSPACEVERTICAL * GRID_COUNT_ONE_PAGE, 0); trans.transform.localEulerAngles = Vector3.zero; trans.transform.localScale = new Vector3(1, 1, 1); trans.name = "GridListPosHorizon" + index / GRID_COUNT_ONE_PAGE; m_dragableCamera.transformList.Add(trans.transform); m_dragableCamera.SetArrow(); } } if (index == num - 1) { // 滑动形式需要处理(翻页不需要设置) if (!m_dragableCamera.IsMovePage) { m_dragableCamera.FPageHeight = ITEMSPACEVERTICAL * GRID_COUNT_ONE_PAGE; m_dragableCamera.MAXY = OFFSET_Y; if (m_mapGrid.Count > GRID_COUNT_ONE_PAGE) { m_dragableCamera.MINY = (m_mapGrid.Count - GRID_COUNT_ONE_PAGE) * ITEMSPACEVERTICAL + OFFSET_Y; } else { m_dragableCamera.MINY = m_dragableCamera.MAXY; } m_dragableCamera.SetArrow(); } if (act != null) { act(); } } }); } }