public void RefreshPetZuhePage() { List <sdPetZuheData> listData1 = new List <sdPetZuheData>(); List <sdPetZuheData> listData2 = new List <sdPetZuheData>(); Hashtable kTable = sdConfDataMgr.Instance().GetPetGroupsTable(); if (kTable != null) { foreach (DictionaryEntry de in kTable) { string key1 = (string)de.Key; Hashtable valTable = (Hashtable)de.Value; int iPetID1 = int.Parse(valTable["Data1.PetID"].ToString()); int iPetID2 = int.Parse(valTable["Data2.PetID"].ToString()); int iPetID3 = int.Parse(valTable["Data3.PetID"].ToString()); int iPetID4 = int.Parse(valTable["Data4.PetID"].ToString()); int iPetEnable1 = 0; if (iPetID1 > 0) { if (sdNewPetMgr.Instance.GetPetTemplateIsInCurPageBattleTeam(iPetID1, mCurTeamIndex) == 0) { iPetEnable1 = 1; } else { iPetEnable1 = 2; } } int iPetEnable2 = 0; if (iPetID2 > 0) { if (sdNewPetMgr.Instance.GetPetTemplateIsInCurPageBattleTeam(iPetID2, mCurTeamIndex) == 0) { iPetEnable2 = 1; } else { iPetEnable2 = 2; } } int iPetEnable3 = 0; if (iPetID3 > 0) { if (sdNewPetMgr.Instance.GetPetTemplateIsInCurPageBattleTeam(iPetID3, mCurTeamIndex) == 0) { iPetEnable3 = 1; } else { iPetEnable3 = 2; } } int iPetEnable4 = 0; if (iPetID4 > 0) { if (sdNewPetMgr.Instance.GetPetTemplateIsInCurPageBattleTeam(iPetID4, mCurTeamIndex) == 0) { iPetEnable4 = 1; } else { iPetEnable4 = 2; } } //四个ID都属于:不存在,未激活.. if (iPetEnable1 != 2 && iPetEnable2 != 2 && iPetEnable3 != 2 && iPetEnable3 != 2) { } else { sdPetZuheData data = new sdPetZuheData(); data.iZuheID = int.Parse(key1); data.iPetID1 = iPetID1; data.iPetEnableType1 = iPetEnable1; data.iPetID2 = iPetID2; data.iPetEnableType2 = iPetEnable2; data.iPetID3 = iPetID3; data.iPetEnableType3 = iPetEnable3; data.iPetID4 = iPetID4; data.iPetEnableType4 = iPetEnable4; if (iPetEnable1 != 1 && iPetEnable2 != 1 && iPetEnable3 != 1 && iPetEnable4 != 1) { listData1.Add(data); } else { listData2.Add(data); } } } } int num = listData1.Count + listData2.Count; int iZero = 0; if (num < 2) { iZero = 2 - num; } num = num + iZero; int count = petzuheInfoList.Count; if (num > count) { num = num - count; for (int i = 0; i < num; ++i) { GameObject tempItem = GameObject.Instantiate(copyListItem) as GameObject; tempItem.GetComponent <sdUIPetZuheIcon>().index = count; tempItem.transform.parent = copyListItem.transform.parent; tempItem.transform.localPosition = copyListItem.transform.localPosition; tempItem.transform.localScale = copyListItem.transform.localScale; Vector3 pos = tempItem.transform.localPosition; pos.y = pos.y - (295 * count); tempItem.transform.localPosition = pos; petzuheInfoList.Add(petzuheInfoList.Count, tempItem.GetComponent <sdUIPetZuheIcon>()); ++count; } } IDictionaryEnumerator iter = petzuheInfoList.GetEnumerator(); foreach (sdPetZuheData infoEntry in listData1) { if (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; icon.bpetGray0 = false; icon.bpetGray1 = false; icon.bpetGray2 = false; icon.bpetGray3 = false; icon.SetIdAndReflashUI(infoEntry.iZuheID); } } foreach (sdPetZuheData infoEntry in listData2) { if (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; if (infoEntry.iPetEnableType1 == 1) { icon.bpetGray0 = true; } else { icon.bpetGray0 = false; } if (infoEntry.iPetEnableType2 == 1) { icon.bpetGray1 = true; } else { icon.bpetGray1 = false; } if (infoEntry.iPetEnableType3 == 1) { icon.bpetGray2 = true; } else { icon.bpetGray2 = false; } if (infoEntry.iPetEnableType4 == 1) { icon.bpetGray3 = true; } else { icon.bpetGray3 = false; } icon.SetIdAndReflashUI(infoEntry.iZuheID); icon.SetGray(true); } } //只显示底板的卡片.. for (int i = 0; i < iZero; i++) { if (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; icon.SetIdAndReflashUI(0); } } while (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; icon.SetIdAndReflashUI(-1); } if (copyListItem != null) { copyListItem.transform.parent.GetComponent <UIDraggablePanel>().ResetPosition(); } }
public void RefreshPetZuhePage() { int iTmpID = 0; SClientPetInfo Info = null; if (m_uuDBID != UInt64.MaxValue) { Info = sdNewPetMgr.Instance.GetPetInfo(m_uuDBID); } else { if (m_iPetTemplateID > 0) { Info = sdNewPetMgr.Instance.GetPetInfoByTemplateID(m_iPetTemplateID, m_iPetUp, m_iPetLevel); } } if (Info != null) { iTmpID = (int)Info.m_uiTemplateID; } List <sdPetZuheData> listData = new List <sdPetZuheData>(); Hashtable kTable = sdConfDataMgr.Instance().GetPetGroupsTable(); if (kTable != null) { foreach (DictionaryEntry de in kTable) { string key1 = (string)de.Key; Hashtable valTable = (Hashtable)de.Value; int iPetID1 = int.Parse(valTable["Data1.PetID"].ToString()); int iPetID2 = int.Parse(valTable["Data2.PetID"].ToString()); int iPetID3 = int.Parse(valTable["Data3.PetID"].ToString()); int iPetID4 = int.Parse(valTable["Data4.PetID"].ToString()); bool bNeedShow = false; if (iPetID1 > 0 && iPetID1 == iTmpID) { bNeedShow = true; } if (iPetID2 > 0 && iPetID2 == iTmpID) { bNeedShow = true; } if (iPetID3 > 0 && iPetID3 == iTmpID) { bNeedShow = true; } if (iPetID4 > 0 && iPetID4 == iTmpID) { bNeedShow = true; } if (bNeedShow) { sdPetZuheData data = new sdPetZuheData(); data.iZuheID = int.Parse(key1); data.iPetID1 = iPetID1; if (iPetID1 > 0) { data.iPetEnableType1 = 2; } else { data.iPetEnableType1 = 0; } data.iPetID2 = iPetID2; if (iPetID2 > 0) { data.iPetEnableType2 = 2; } else { data.iPetEnableType2 = 0; } data.iPetID3 = iPetID3; if (iPetID3 > 0) { data.iPetEnableType3 = 2; } else { data.iPetEnableType3 = 0; } data.iPetID4 = iPetID4; if (iPetID4 > 0) { data.iPetEnableType4 = 2; } else { data.iPetEnableType4 = 0; } listData.Add(data); } } } int num = listData.Count; int iZero = 0; if (num < 2) { iZero = 2 - num; } num = num + iZero; int count = petzuheInfoList.Count; if (num > count) { num = num - count; for (int i = 0; i < num; ++i) { GameObject tempItem = GameObject.Instantiate(copyListItem) as GameObject; tempItem.GetComponent <sdUIPetZuheIcon>().index = count; tempItem.transform.parent = copyListItem.transform.parent; tempItem.transform.localPosition = copyListItem.transform.localPosition; tempItem.transform.localScale = copyListItem.transform.localScale; Vector3 pos = tempItem.transform.localPosition; pos.y = pos.y - (295 * count); tempItem.transform.localPosition = pos; petzuheInfoList.Add(petzuheInfoList.Count, tempItem.GetComponent <sdUIPetZuheIcon>()); ++count; } } IDictionaryEnumerator iter = petzuheInfoList.GetEnumerator(); foreach (sdPetZuheData infoEntry in listData) { if (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; if (infoEntry.iPetEnableType1 == 1) { icon.bpetGray0 = true; } else { icon.bpetGray0 = false; } if (infoEntry.iPetEnableType2 == 1) { icon.bpetGray1 = true; } else { icon.bpetGray1 = false; } if (infoEntry.iPetEnableType3 == 1) { icon.bpetGray2 = true; } else { icon.bpetGray2 = false; } if (infoEntry.iPetEnableType4 == 1) { icon.bpetGray3 = true; } else { icon.bpetGray3 = false; } icon.SetIdAndReflashUI(infoEntry.iZuheID); icon.SetGray(false); } } //只显示底板的卡片.. for (int i = 0; i < iZero; i++) { if (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; icon.SetIdAndReflashUI(0); } } while (iter.MoveNext()) { sdUIPetZuheIcon icon = iter.Value as sdUIPetZuheIcon; icon.SetIdAndReflashUI(-1); } if (copyListItem != null) { copyListItem.transform.parent.GetComponent <UIDraggablePanel>().ResetPosition(); } }