| | |
| | | } |
| | | |
| | | //是否达到可突破的条件 |
| | | public bool IsCanBreak(HeroInfo hero) |
| | | public bool IsCanBreak(HeroInfo hero, int showTip = 0) |
| | | { |
| | | return hero.heroLevel >= GetNeedLVByBreakLV(hero.Quality, hero.breakLevel); |
| | | if (hero.heroLevel < GetNeedLVByBreakLV(hero.Quality, hero.breakLevel)) |
| | | { |
| | | //等级未达标 |
| | | if (showTip != 0) |
| | | { |
| | | SysNotifyMgr.Instance.ShowTip("HeroLVNotEnough"); |
| | | } |
| | | return false; |
| | | } |
| | | if (hero.breakLevel >= HeroBreakConfig.GetMaxBreakLv(hero.heroId)) |
| | | { |
| | | //突破等级已达最高级 |
| | | return false; |
| | | } |
| | | |
| | | //材料是否足够 |
| | | |
| | | var breakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(hero.Quality, hero.breakLevel); |
| | | for (int i = 0; i < breakConfig.UPCostItemList.Length; i++) |
| | | { |
| | | if (!ItemLogicUtility.CheckItemCount(PackType.Item, breakConfig.UPCostItemList[i][0], breakConfig.UPCostItemList[i][1], showTip)) |
| | | { |
| | | return false; |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | public int GetAllHeroPer() |
| | |
| | | { |
| | | if (!hero.isAttrActive) |
| | | return 0; |
| | | |
| | | |
| | | var heroCnt = PackManager.Instance.GetItemCountByID(PackType.Hero, hero.heroId); |
| | | if (!hero.IsInTeamByTeamType(TeamType.Story)) |
| | | { |
| | |
| | | return 2; |
| | | } |
| | | |
| | | var maxBreakLV = HeroBreakConfig.GetMaxBreakLv(hero.heroId); |
| | | if (hero.breakLevel < maxBreakLV) |
| | | if (IsCanBreak(hero)) |
| | | { |
| | | if (IsCanBreak(hero)) |
| | | { |
| | | var breakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(hero.Quality, hero.breakLevel); |
| | | if (itemPack.GetCountById(breakConfig.UPCostItemList[0][0]) >= breakConfig.UPCostItemList[0][1]) |
| | | { |
| | | return 3; |
| | | } |
| | | return 0; |
| | | } |
| | | return 3; |
| | | } |
| | | |
| | | if (!IsLVMax(hero)) |
| | |
| | | } |
| | | return 0; |
| | | } |
| | | |
| | | |
| | | #region 红点 |
| | | |