protected int SortRewardInfo(LevelRewardLevelRef reward1, LevelRewardLevelRef reward2) { int playerLev = GameCenter.mainPlayerMng.MainPlayerInfo.CurLevel; int state1 = 0; int state2 = 0; //已经领取 if (levRewardDic.ContainsKey(reward1.level)) { state1 = 3; } //可领取 else if (playerLev >= reward1.level) { state1 = 1; } //不可领取 else { state1 = 2; } //已经领取 if (levRewardDic.ContainsKey(reward2.level)) { state2 = 3; } //可领取 else if (playerLev >= reward2.level) { state2 = 1; } //不可领取 else { state2 = 2; } if (state1 > state2)//先按奖励状态排序(可领取-不能领取-已领取) { return(1); } if (state1 < state2) { return(-1); } if (reward1.level > reward2.level)//状态相同按ID排序 { return(1); } if (reward1.level < reward2.level) { return(-1); } return(0); }
public void Show(LevelRewardLevelRef _LevelRewardLevelRef) { LevelRewardRef = _LevelRewardLevelRef; int palyerLev = GameCenter.mainPlayerMng.MainPlayerInfo.CurLevel; Dictionary <int, int> levRewardDic = GameCenter.rankRewardMng.levRewardDic; if (levLab != null) { levLab.text = ConfigMng.Instance.GetUItext(26, new string[1] { ConfigMng.Instance.GetLevelDes(_LevelRewardLevelRef.level) }); } for (int i = 0; i < items.Count; i++) { if (_LevelRewardLevelRef.item.Count > i) { items[i].FillInfo(new EquipmentInfo(_LevelRewardLevelRef.item[i].eid, _LevelRewardLevelRef.item[i].count, EquipmentBelongTo.PREVIEW)); } else { items[i].gameObject.SetActive(false); } } if (palyerLev >= _LevelRewardLevelRef.level) { if (levRewardDic.ContainsKey(_LevelRewardLevelRef.level)) { takeBtn.gameObject.SetActive(false); canNotTakeBtn.gameObject.SetActive(true); } else { if (takeBtn != null) { takeBtn.gameObject.SetActive(true); if (takeMark != null) { takeMark.IsGray = UISpriteEx.ColorGray.normal; } } } } else { canNotTakeBtn.gameObject.SetActive(false); if (takeMark != null) { takeMark.IsGray = UISpriteEx.ColorGray.Gray; } } }