lcy
2026-01-23 7e3f0aad03c3be0341ec396dd66ef98b31f14e39
432 自动挂机优化-客户端

1.战斗失败,且重试次数用尽后,自动取消勾选自动挑战boss
2.自动挑战首领开启中时,主界面战斗播放文字动画
2个文件已修改
27 ■■■■■ 已修改文件
Main/System/Main/AutoFightModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Main/HomeWin.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Main/AutoFightModel.cs
@@ -80,6 +80,7 @@
        }
    }
    public event Action<bool> OnAutoChallengeBossEvent;
    //自动挑战首领
    public bool isAutoChallengeBoss
    {
@@ -90,6 +91,7 @@
        set
        {
            QuickSetting.Instance.SetQuickSetting(QuickSettingType.AutoFight_ChallengeBoss, value);
            OnAutoChallengeBossEvent?.Invoke(value);
        }
    }
@@ -107,10 +109,12 @@
            if (m_NowChallengeCount >= tryChallengeCount)
            {
                m_NowChallengeCount = -1;   //代表停止继续挑战BOSS, 但不是停止战斗
                isAutoChallengeBoss = false; //取消勾选自动挑战boss
            }
        }
    }
    //自动挑战首领,战败x次停止
    public int tryChallengeCount
    {
Main/System/Main/HomeWin.cs
@@ -92,10 +92,10 @@
    [SerializeField] ButtonEx btnChatWin;
    [SerializeField] TextEx txtChatChannel;
    [SerializeField] Transform transChatBulletView;
    GameObject chatBulletViewPrefab;
    [SerializeField] UIEffectPlayer autoFightBossUIEffectPlayer;
    /// <summary>
@@ -266,6 +266,12 @@
        TimeMgr.Instance.OnDayEvent += OnDayEvent;
        ChatManager.Instance.OnUpdateTalkEvent += OnUpdateTalkEvent;
        UIManager.Instance.OnOpenWindow += OnOpenWindow;
        AutoFightModel.Instance.OnAutoChallengeBossEvent += OnAutoChallengeBossEvent;
        autoFightBossUIEffectPlayer.Stop();
        if (AutoFightModel.Instance.isAutoChallengeBoss)
        {
            autoFightBossUIEffectPlayer.Play();
        }
        Display();
        DisplayFirstChargeBtn();
        DisplayOSActivity();
@@ -274,6 +280,7 @@
        // battleWin.SetBattleField(BattleManager.Instance.storyBattleField);
        DelayPlayMusic().Forget();
    }
@@ -300,12 +307,24 @@
        TimeMgr.Instance.OnDayEvent -= OnDayEvent;
        ChatManager.Instance.OnUpdateTalkEvent -= OnUpdateTalkEvent;
        UIManager.Instance.OnOpenWindow -= OnOpenWindow;
        AutoFightModel.Instance.OnAutoChallengeBossEvent += OnAutoChallengeBossEvent;
        //  关闭的时候把战斗界面也给关了 虽然是在外面开的
        UIManager.Instance.CloseWindow<BattleWin>();
    }
    private void OnAutoChallengeBossEvent(bool isStart)
    {
        if (isStart)
        {
            autoFightBossUIEffectPlayer.Play();
        }
        else
        {
            autoFightBossUIEffectPlayer.Stop();
        }
    }
    private void OnOpenWindow(UIBase win)
    {
        if (win is ChatWin)