public void UpdateLevelList(CliProto.SC_GIFT_LEVEL_NTF netMsg) { m_upgradeInfos.Clear(); Hashtable upgradeAwardDB = sdConfDataMgr.Instance().m_upgradeAwardDB; foreach (DictionaryEntry item in upgradeAwardDB) { UpgradeAward upgradeAward = item.Value as UpgradeAward; UpgradeInfo upgradeInfo = new UpgradeInfo(); upgradeInfo.Level = upgradeAward.Level; upgradeInfo.ItemId1 = upgradeAward.ItemId1; upgradeInfo.ItemNum1 = upgradeAward.ItemNum1; upgradeInfo.Item1IfTips = upgradeAward.Item1IfTips; upgradeInfo.ItemId2 = upgradeAward.ItemId2; upgradeInfo.ItemNum2 = upgradeAward.ItemNum2; upgradeInfo.Item2IfTips = upgradeAward.Item2IfTips; upgradeInfo.ItemId3 = upgradeAward.ItemId3; upgradeInfo.ItemNum3 = upgradeAward.ItemNum3; upgradeInfo.Item3IfTips = upgradeAward.Item3IfTips; upgradeInfo.ItemId4 = upgradeAward.ItemId4; upgradeInfo.ItemNum4 = upgradeAward.ItemNum4; upgradeInfo.Item4IfTips = upgradeAward.Item4IfTips; m_upgradeInfos.Add(upgradeInfo); } m_upgradeInfos.Sort(delegate(UpgradeInfo x, UpgradeInfo y) { return(x.Level.CompareTo(y.Level)); }); for (int i = 0; i < netMsg.m_Count; i++) { foreach (UpgradeInfo item in m_upgradeInfos) { if (netMsg.m_Level[i] == item.Level) { item.finished = true; break; } } } if (m_goWndRoot != null && _bWndOpen) { RefreshUpgradeAwardList(false); } }
private static void msg_SC_GIFT_LEVEL_NTF(int iMsgID, ref CMessage msg) { CliProto.SC_GIFT_LEVEL_NTF netMsg = (CliProto.SC_GIFT_LEVEL_NTF)msg; LevelAwardWnd.Instance.UpdateLevelList(netMsg); }