From 4145075707a34f925235d74306788b186328eac3 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期二, 21 十月 2025 15:56:25 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/System/Main/MainWin.cs | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 53 insertions(+), 3 deletions(-)
diff --git a/Main/System/Main/MainWin.cs b/Main/System/Main/MainWin.cs
index 6c3c56d..a629719 100644
--- a/Main/System/Main/MainWin.cs
+++ b/Main/System/Main/MainWin.cs
@@ -27,10 +27,12 @@
[SerializeField] UIEffectPlayer fightEffect;
[SerializeField] UIEffectPlayer openCloseAnim;
[SerializeField] FillTween cdTween;
+ int index = 0;
public bool isFirstOpen = true; //棣栨鎵撳紑
public Text hammerText;
+ public static event Action TabChangeEvent;
protected override void InitComponent()
{
base.InitComponent();
@@ -43,6 +45,7 @@
UpdateCurrency();
UpdatePlayerInfo();
RefreshFightBtn();
+ DisplayTopBar(index);
}
protected override void OnPreOpen()
@@ -50,6 +53,8 @@
PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
AutoFightModel.Instance.OnFightEvent += OnSkillCast;
ChallengeTabWin.OnCloseChallengeTabWin += OnCloseChallengeTabWin;
+ BattleManager.Instance.onBattleFieldCreate += OnBattleFieldCreate;
+ BattleManager.Instance.onBattleFieldDestroy += OnBattleFieldDestroy;
base.OnPreOpen();
// 鍒锋柊UI
@@ -61,7 +66,19 @@
PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefresh;
AutoFightModel.Instance.OnFightEvent -= OnSkillCast;
ChallengeTabWin.OnCloseChallengeTabWin -= OnCloseChallengeTabWin;
+ BattleManager.Instance.onBattleFieldCreate -= OnBattleFieldCreate;
+ BattleManager.Instance.onBattleFieldDestroy -= OnBattleFieldDestroy;
base.OnPreClose();
+ }
+
+ private void OnBattleFieldCreate(string guid, BattleField battleField)
+ {
+ Refresh();
+ }
+
+ private void OnBattleFieldDestroy(string guid, BattleField battleField)
+ {
+ Refresh();
}
private void OnCloseChallengeTabWin()
@@ -82,8 +99,37 @@
tabButtons[functionOrder].SelectBtn();
}
+ public void DisplayTopBar(int index)
+ {
+ bool isOtherBattleInProgress = BattleManager.Instance.IsOtherBattleInProgress();
+ switch (index)
+ {
+ case 0:
+ case 2:
+ topBar.SetActive(true);
+ break;
+ case 1:
+ case 4:
+ topBar.SetActive(false);
+ break;
+ case 3:
+ topBar.SetActive(!isOtherBattleInProgress);
+ break;
+ default:
+ topBar.SetActive(true);
+ break;
+ }
+ }
+
protected override void SelectBottomTab(int index)
{
+ bool isOtherBattleInProgress = BattleManager.Instance.IsOtherBattleInProgress();
+ if (isOtherBattleInProgress)
+ {
+ // 濡傛灉姝e湪闈炰富绾挎垬鏂椾腑锛屾病婊¤冻瑙i攣鏉′欢鍒欎笉鍏佽鍒囨崲
+ }
+ DisplayTopBar(index);
+
if (index == 3)
{
//鎸戞垬鐗规畩鏄剧ず閫昏緫
@@ -91,7 +137,8 @@
return;
}
- topBar.SetActive(index == 0 || index == 2);
+
+
// 濡傛灉鐐瑰嚮褰撳墠宸查�変腑鐨勬爣绛撅紝涓嶅仛澶勭悊
if (functionOrder == index && currentSubUI != null)
{
@@ -107,6 +154,8 @@
// 鏍规嵁閫変腑鐨勬爣绛炬墦寮�瀵瑰簲鐨勭晫闈�
OpenSubUIByTabIndex();
+
+ TabChangeEvent?.Invoke();
}
//鎴樻枟鎸夐挳鍔ㄧ敾
@@ -187,6 +236,9 @@
/// </summary>
protected override void OnTabButtonClicked(int index)
{
+ this.index = index;
+
+
if (index == 0)
{
if (currentSubUI != null && currentSubUI.name == "HomeWin")
@@ -201,8 +253,6 @@
UIManager.Instance.OpenWindow<GuildJoinWin>();
return;
}
-
-
SelectBottomTab(index);
}
--
Gitblit v1.8.0