| System/FairyAu/FairyLeagueDungeonSettleWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyLeagueModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyLeagueRankCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/FairyAu/FairyLeagueDungeonSettleWin.cs
@@ -67,7 +67,9 @@ #endregion private bool OnGetDynamicSize(ScrollerDataType type, int index, out float height) { if (fairyLeagueModel.fairyLeagueGroupId == 5 && index == fairyLeagueModel.GetBattleFirstPlayer()) if (fairyLeagueModel.fairyLeagueGroupId == 5 && (index == fairyLeagueModel.GetBattleWinFirstPlayer() || index == fairyLeagueModel.GetBattleDefeatFirstPlayer())) { height = m_FirstRankCellSize; } System/FairyAu/FairyLeagueModel.cs
@@ -239,8 +239,10 @@ /// <summary> /// key----世界等级 /// </summary> public Dictionary<int, List<AwardItem>> finalWarAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, List<AwardItem>> finalWarChampionAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, List<AwardItem>> finalWarWinAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, List<AwardItem>> finalWarChampionWinAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, List<AwardItem>> finalWarDefeatAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, List<AwardItem>> finalWarChampionDefeatAwardDict = new Dictionary<int, List<AwardItem>>(); private Dictionary<int, float> crystalRateDict = new Dictionary<int, float>(); readonly List<int> fairyLeagueStateValues = new List<int>() { 11, 12, 13, 21, 22, 23 }; FairyLeagueWeekTime fairyLeagueWeekTime = new FairyLeagueWeekTime(); @@ -336,7 +338,16 @@ { var _worldLv = int.Parse(match.Groups[1].Value); List<AwardItem> _list = ParseAward(StringUtility.Contact('[', match.Groups[2].Value, ']')); finalWarAwardDict.Add(_worldLv, _list); finalWarWinAwardDict.Add(_worldLv, _list); } } if (_regex.IsMatch(cfg.Numerical2)) { foreach (Match match in _regex.Matches(cfg.Numerical2)) { var _worldLv = int.Parse(match.Groups[1].Value); List<AwardItem> _list = ParseAward(StringUtility.Contact('[', match.Groups[2].Value, ']')); finalWarDefeatAwardDict.Add(_worldLv, _list); } } cfg = Config.Instance.Get<FuncConfigConfig>("FamilyMatchSRankOneReward"); @@ -346,7 +357,16 @@ { var _worldLv = int.Parse(match.Groups[1].Value); List<AwardItem> _list = ParseAward(StringUtility.Contact('[', match.Groups[2].Value, ']')); finalWarChampionAwardDict.Add(_worldLv, _list); finalWarChampionWinAwardDict.Add(_worldLv, _list); } } if (_regex.IsMatch(cfg.Numerical2)) { foreach (Match match in _regex.Matches(cfg.Numerical2)) { var _worldLv = int.Parse(match.Groups[1].Value); List<AwardItem> _list = ParseAward(StringUtility.Contact('[', match.Groups[2].Value, ']')); finalWarChampionDefeatAwardDict.Add(_worldLv, _list); } } cfg = Config.Instance.Get<FuncConfigConfig>("FamilyMatchPersonalScore"); @@ -853,7 +873,7 @@ return _camp == FairyCampType.Blue ? "FlagBlue" : "FlagRed"; } public int GetBattleFirstPlayer() public int GetBattleWinFirstPlayer() { if (fairyLeagueResults.Count == 0) { @@ -869,6 +889,22 @@ return 0; } public int GetBattleDefeatFirstPlayer() { if (fairyLeagueResults.Count == 0) { return -1; } for (int i = 0; i < fairyLeagueResults.Count; i++) { if (!fairyLeagueResults[i].IsWin) { return i; } } return 0; } #region 前16名仙盟列表 List<PlayerFairyData.FairyData> frontFairyList = new List<PlayerFairyData.FairyData>(); public event Action frontFairyUpdate; System/FairyAu/FairyLeagueRankCell.cs
@@ -38,7 +38,6 @@ m_RankTxt.gameObject.SetActive(_index > 2); m_RankImg.gameObject.SetActive(_index < 3); m_RankBG.SetSprite(_index % 2 == 0 ? "RankList_SingleBottom" : "RankList_QuanTouMing"); m_FirstRankSign.gameObject.SetActive(_index == model.GetBattleFirstPlayer()); if (_index < 3) { m_RankImg.SetSprite(_index == 0 ? "Rank_First" : _index == 1 ? "Rank_Second" : "Rank_Third"); @@ -66,13 +65,30 @@ var _count = (int)Mathf.Max(_item.count * (_item.isPer == 1 ? ((float)_per / 100) : 1), 1); m_IntegralAward.Init(_item.id, _count, _item.bind); m_IntegralAward.itemCnt.text = StringUtility.Contact("X", _count); m_ContainChampion.gameObject.SetActive(model.fairyLeagueGroupId == 5 && _index == model.GetBattleFirstPlayer()); m_ChampionAwardBtn.onClick.RemoveAllListeners(); if (model.fairyLeagueGroupId == 5 && _index == model.GetBattleFirstPlayer()) bool winChampion = _index == model.GetBattleWinFirstPlayer(); bool defeatChampion = _index == model.GetBattleDefeatFirstPlayer(); m_FirstRankSign.gameObject.SetActive(winChampion || defeatChampion); if (winChampion || defeatChampion) { var _dict = (model.fairyLeagueSession == 1 && model.fairyLeagueHelp.fairyWarEnter.IsFinalMatch == 1) ? model.finalWarChampionAwardDict : model.finalWarAwardDict; if (_dict != null) m_FirstRankSign.SetSprite(winChampion ? "UnionMatchNo1" : "UnionMatchNo2"); m_FirstRankSign.SetNativeSize(); } m_ContainChampion.gameObject.SetActive(model.fairyLeagueGroupId == 5 && (winChampion || defeatChampion)); m_ChampionAwardBtn.onClick.RemoveAllListeners(); if (model.fairyLeagueGroupId == 5 && (winChampion || defeatChampion)) { Dictionary<int, List<AwardItem>> _dict = null; if (winChampion) { _dict = (model.fairyLeagueSession == 1 && model.fairyLeagueHelp.fairyWarEnter.IsFinalMatch == 1) ? model.finalWarChampionWinAwardDict : model.finalWarWinAwardDict; } else { _dict = (model.fairyLeagueSession == 1 && model.fairyLeagueHelp.fairyWarEnter.IsFinalMatch == 1) ? model.finalWarChampionDefeatAwardDict : model.finalWarDefeatAwardDict; } if (_dict != null && _dict.Count > 0) { _rankKey = UIHelper.GetIntervalAward(_dict.Keys, (int)PlayerDatas.Instance.worldLv); var _Award = _dict[_rankKey][0];