| Main/System/Arena/ArenaChallengeWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Main/System/Battle/ArenaBattleWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Main/System/Battle/BattleField/ArenaBattleField.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Main/System/Battle/BattleManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Main/System/Arena/ArenaChallengeWin.cs
@@ -26,25 +26,18 @@ protected override void OnPreOpen() { base.OnPreOpen(); // RankModel.Instance.onRankRefresh += OnRankRefresh; scrollerController.OnRefreshCell += OnRefreshCell; ArenaManager.Instance.OnArenaMatchListEvent += OnArenaMatchListEvent; PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh; // ArenaManager.Instance.OnUpdateArenaPlayerInfo += OnUpdateArenaPlayerInfo; // ArenaManager.Instance.OnUpdateGameRecInfo += OnUpdateGameRecInfo; // Display(); Display(); } protected override void OnPreClose() { base.OnPreClose(); // RankModel.Instance.onRankRefresh -= OnRankRefresh; scrollerController.OnRefreshCell -= OnRefreshCell; ArenaManager.Instance.OnArenaMatchListEvent -= OnArenaMatchListEvent; PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefresh; // ArenaManager.Instance.OnUpdateArenaPlayerInfo -= OnUpdateArenaPlayerInfo; // ArenaManager.Instance.OnUpdateGameRecInfo -= OnUpdateGameRecInfo; } private void PlayerDataRefresh(PlayerDataType type) Main/System/Battle/ArenaBattleWin.cs
@@ -76,7 +76,7 @@ BattleManager.Instance.onBattleFieldCreate += OnCreateBattleField; EventBroadcast.Instance.AddListener<BattleDmgInfo>(EventName.BATTLE_DAMAGE_TAKEN, OnDamageTaken); EventBroadcast.Instance.AddListener<string, JsonData>(EventName.BATTLE_END, OnBattleEnd); UIManager.Instance.CloseWindow<BattleWin>(); UIManager.Instance.GetUI<MainWin>()?.CloseSubUI(); } protected override void OnPreClose() @@ -87,7 +87,8 @@ BattleManager.Instance.onBattleFieldCreate -= OnCreateBattleField; EventBroadcast.Instance.RemoveListener<BattleDmgInfo>(EventName.BATTLE_DAMAGE_TAKEN, OnDamageTaken); EventBroadcast.Instance.RemoveListener<string, JsonData>(EventName.BATTLE_END, OnBattleEnd); UIManager.Instance.OpenWindow<BattleWin>(); UIManager.Instance.GetUI<MainWin>()?.RestoreSubUI(); } private void OnTabChangeEvent() @@ -300,17 +301,16 @@ txtWaveInfo.text = Language.Get("BoneField09", battleField.round, battleField.turnMax); } public void DisplayBattleWin() bool IsBlockBattleChangeTab() { if (!UIManager.Instance.IsOpened<BattleWin>()) { BattleWin battleWin = UIManager.Instance.OpenWindow<BattleWin>(); battleWin.SetBattleField(BattleManager.Instance.storyBattleField); string activeBattleName = BattleManager.Instance.GetActiveBattleName(); // 没有正在进行的战斗 if (activeBattleName == null || activeBattleName == "") return false; // 主线道中不阻止切出 if (activeBattleName == "StoryBattleField") return false; return true; } else { BattleWin battleWin = UIManager.Instance.GetUI<BattleWin>(); battleWin.SetBattleField(BattleManager.Instance.storyBattleField); } } } Main/System/Battle/BattleField/ArenaBattleField.cs
@@ -140,17 +140,6 @@ fsBattleWin = UIManager.Instance.OpenWindow<ArenaBattleWin>(); } fsBattleWin.SetBattleField(this); if (UIManager.Instance.IsOpened<ArenaRecordWin>()) { UIManager.Instance.CloseWindow<ArenaRecordWin>(); } if (UIManager.Instance.IsOpened<ArenaChallengeWin>()) { UIManager.Instance.CloseWindow<ArenaChallengeWin>(); } if (UIManager.Instance.IsOpened<ArenaWin>()) { UIManager.Instance.CloseWindow<ArenaWin>(); Main/System/Battle/BattleManager.cs
@@ -586,26 +586,6 @@ return null; } /// <summary> /// 检查是否有非主线战斗(如竞技场、白骨等)正在进行 /// </summary> /// <returns>如果有任何非主线战斗且未结束,则返回true</returns> public bool IsOtherBattleInProgress() { foreach (var kvp in battleFields) { BattleField battleField = kvp.Value; // 检查战场是否有效且尚未结束 if (battleField == null || battleField.IsBattleFinish) continue; // MapID 1 (StoryBattleField) 和 2 (StoryBossBattleField) 都是主线 if (battleField.MapID == 1 || battleField.MapID == 2) continue; return true; } return false; } // 获取当前正在显示的战斗场景名称,如果没有则返回空字符串 public string GetActiveBattleName() {