0312 特权卡立即跳过不受功能开启影响(20级)
优化挑战BOSS引导提示时机
吞噬红点优武将"新"提醒
优化武将突破红点
满星不能遣散问题
6个文件已修改
76 ■■■■ 已修改文件
Main/System/Battle/BaseBattleWin.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/BattleWin.cs 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HeroUI/HeroTrainWin.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HeroUI/HeroUIManager.Reborn.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HeroUI/HeroUIManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Utility/EnumHelper.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/BaseBattleWin.cs
@@ -194,14 +194,15 @@
    {
        if (null == battleField)
            return;
        if (!FuncOpen.Instance.IsFuncOpen(BattleManager.Instance.passFuncId, true))
        // 检查是否为永久特权卡玩家
        bool hasForeverPrivilege = InvestModel.Instance.IsInvested(InvestModel.foreverCardType);
        if (!hasForeverPrivilege && !FuncOpen.Instance.IsFuncOpen(BattleManager.Instance.passFuncId, true))
            return;
        int passRound = BattleManager.Instance.defaultPassRound;
        var name = battleField.ToString();
        // 检查是否为永久特权卡玩家
        bool hasForeverPrivilege = InvestModel.Instance.IsInvested(InvestModel.foreverCardType);
        if (hasForeverPrivilege)
        {
Main/System/Battle/BattleWin.cs
@@ -48,7 +48,9 @@
    protected override void OnPreOpen()
    {
        // lastClickTime = Time.realtimeSinceStartup;
        lastClickTime = Time.realtimeSinceStartup;
        UIManager.Instance.OnCloseWindow += OnCloseWindow;
        PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataRefresh;
        needGuide = !MainLevelManager.Instance.IsPassedByMainLevelID(BattleManager.Instance.fightGuideMainLevelLimit);
        // SetBattleField(BattleManager.Instance.storyBattleField);
@@ -58,6 +60,8 @@
    protected override void OnPreClose()
    {
        UIManager.Instance.OnCloseWindow -= OnCloseWindow;
        PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefresh;
        UIManager.Instance.CloseWindow<BattleHUDWin>();
        BattleManager.Instance.onBattleFieldCreate -= OnCreateBattleField;
        UIManager.Instance.OnOpenWindow -= OnOpenWindow;
@@ -71,10 +75,6 @@
        }
    }
    protected override void OnOpen()
    {
        base.OnOpen();
    }
    protected override void OnClose()
    {
@@ -89,16 +89,38 @@
        battleField = null;
    }
    protected override void NextFrameAfterOpen()
    void OnCloseWindow(UIBase ui)
    {
        base.NextFrameAfterOpen();
        if (ui is NewBieWin)
        {
            lastClickTime = Time.realtimeSinceStartup;
        }
    }
    protected override void CompleteClose()
    bool lastIsBoss = false;
    void OnPlayerDataRefresh(PlayerDataType type)
    {
        base.CompleteClose();
        switch (type)
        {
            case PlayerDataType.ExAttr1:
            case PlayerDataType.ExAttr2:
                if (!lastIsBoss && MainLevelManager.Instance.CanChallengeBoss())
                {
                    //可挑战的时候也要等CD
                    lastClickTime = Time.realtimeSinceStartup;
                    lastIsBoss = true;
                }
                break;
        }
    }
    public void SetBattleField(BattleField _battleField)
    {
        battleField = _battleField;
Main/System/HeroUI/HeroTrainWin.cs
@@ -95,6 +95,7 @@
    [SerializeField] Image redpointAwake;
    [SerializeField] Image redpointGift;
    [SerializeField] Image redpointLVUP;
    [SerializeField] Image redpointBreakLVUP; //突破红点
@@ -838,6 +839,7 @@
        redpointLVUP.SetActive(false);
        trainMainRedImg.SetActive(false);
        breakMainRedImg.SetActive(false);
        redpointBreakLVUP.SetActive(false);
        var heroCnt = PackManager.Instance.GetItemCountByID(PackType.Hero, hero.heroId);
@@ -887,7 +889,7 @@
        if (HeroUIManager.Instance.IsCanBreak(hero))
        {
            redpointLVUP.SetActive(true);
            redpointBreakLVUP.SetActive(true);
            breakMainRedImg.SetActive(true);
        }
Main/System/HeroUI/HeroUIManager.Reborn.cs
@@ -119,14 +119,31 @@
        int specialAttrType = selectList[4];
        List<string> retGuidList = new List<string>();
        List<int> fullStarHeroIDList = new List<int>();
        foreach (var heroInfo in _list)
        {
            if (heroInfo.heroStar < heroInfo.GetCurMaxStar())
            {
                //相同武将中已经有满星的
                continue;
            }
            var heorID = heroInfo.heroId;
            if (fullStarHeroIDList.Contains(heorID))
                continue;
            fullStarHeroIDList.Add(heorID);
        }
        foreach (var heroInfo in _list)
        {
            if (heroInfo.isAttrActive)
                continue;
            if (heroInfo.heroStar < heroInfo.GetCurMaxStar())
            if (!fullStarHeroIDList.Contains(heroInfo.heroId))
            {
                //相同武将中已经有满星的
                continue;
            }
Main/System/HeroUI/HeroUIManager.cs
@@ -605,7 +605,7 @@
            if (HeroManager.Instance.GetHeroCountByID(hero.heroId) > 1)
            {
                heroEatRedPoint.state = RedPointState.Simple;
                heroEatRedPoint.state = RedPointState.GetReward;
                break;
            }
        }
Main/Utility/EnumHelper.cs
@@ -1109,8 +1109,8 @@
    Simple = 1,
    Quantity = 2,
    Full = 3,
    GetReward = 4,
    New = 5,
    New = 4,
    GetReward = 5,
}