| | |
| | | if (dirty) |
| | | { |
| | | RefreshCandidateEquips(selectedLevel.value); |
| | | UpdateRedpoint(selectedLevel.value); |
| | | } |
| | | } |
| | | |
| | | private void UpdateRedpoints() |
| | | { |
| | | var unLockedLevels = GetUnLockedEquipSets(); |
| | | var hints = new Dictionary<int, bool>(); |
| | | foreach (var item in equipSets) |
| | | foreach (var item in unLockedLevels) |
| | | { |
| | | if (item.Value.unLocked) |
| | | { |
| | | hints[item.Key] = false; |
| | | } |
| | | hints[item] = false; |
| | | } |
| | | |
| | | var items = packModel.GetItems(PackType.Item, new SinglePack.FilterParams() |
| | | { |
| | | levels = unLockedLevels, |
| | | equipTypes = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, |
| | | job = PlayerDatas.Instance.baseData.Job, |
| | | }); |
| | | |
| | | foreach (var equip in items) |
| | |
| | | { |
| | | levels = new List<int>() { level }, |
| | | equipTypes = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, |
| | | job = PlayerDatas.Instance.baseData.Job, |
| | | }); |
| | | |
| | | var hasBetterEquip = false; |
| | | var set = equipSets[level]; |
| | | set.redpoint.state = RedPointState.None; |
| | | foreach (var equip in items) |
| | | { |
| | | if (set.redpoint.state != RedPointState.None) |
| | | { |
| | | break; |
| | | } |
| | | |
| | | if (CompareToCurrent(equip.guid) > 0) |
| | | { |
| | | set.redpoint.state = RedPointState.Simple; |
| | | hasBetterEquip = true; |
| | | break; |
| | | } |
| | | } |
| | | |
| | | set.redpoint.state = hasBetterEquip ? RedPointState.Simple : RedPointState.None; |
| | | } |
| | | |
| | | private void ParseConfig() |