hch
9 天以前 b816510b6b189c280088dec693f8181489214a7c
Main/System/HeroUI/HeroUIManager.cs
@@ -197,9 +197,34 @@
    }
    //是否达到可突破的条件
    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()
@@ -463,7 +488,7 @@
    {
        if (!hero.isAttrActive)
            return 0;
        var heroCnt = PackManager.Instance.GetItemCountByID(PackType.Hero, hero.heroId);
        if (!hero.IsInTeamByTeamType(TeamType.Story))
        {
@@ -499,18 +524,9 @@
            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))
@@ -523,6 +539,7 @@
        }
        return 0;
    }
    #region 红点