From 6a105ff34adac6be5e71e17554e9eb3a3bc1b86c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期一, 20 十月 2025 11:50:01 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/System/ChallengeTab/ChallengeTabWin.cs | 60 ++++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 44 insertions(+), 16 deletions(-)
diff --git a/Main/System/ChallengeTab/ChallengeTabWin.cs b/Main/System/ChallengeTab/ChallengeTabWin.cs
index 96b019b..60f67da 100644
--- a/Main/System/ChallengeTab/ChallengeTabWin.cs
+++ b/Main/System/ChallengeTab/ChallengeTabWin.cs
@@ -3,18 +3,12 @@
public class ChallengeTabWin : UIBase
{
- [SerializeField] ClickScreenOtherSpace clickScreenOtherSpace;
[SerializeField] ChallengeTabButton btnBoneField;
+ [SerializeField] ChallengeTabButton btnArena;
public static Action OnCloseChallengeTabWin;
protected override void InitComponent()
{
base.InitComponent();
- clickScreenOtherSpace.RemoveAllListeners();
- clickScreenOtherSpace.AddListener(() =>
- {
- UIManager.Instance.CloseWindow<ChallengeTabWin>();
- });
-
}
protected override void OnPreOpen()
{
@@ -23,10 +17,19 @@
AdsManager.Instance.OnAdsInfoListUpdateEvent += OnAdsInfoListUpdateEvent;
TimeMgr.Instance.OnDayEvent += OnDayEvent;
FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
-
+ PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
Display();
}
-
+ protected override void OnPreClose()
+ {
+ base.OnPreClose();
+ DungeonManager.Instance.UpdateFBInfoChangeEvent -= OnUpdateFBInfoChangeEvent;
+ AdsManager.Instance.OnAdsInfoListUpdateEvent -= OnAdsInfoListUpdateEvent;
+ TimeMgr.Instance.OnDayEvent -= OnDayEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
+ OnCloseChallengeTabWin?.Invoke();
+ }
private void OnDayEvent()
{
Display();
@@ -45,26 +48,50 @@
}
}
+
public void OnFuncStateChangeEvent(int funcId)
{
if (funcId == BoneFieldManager.Instance.funcId)
{
DisplayBoneFieldButton();
}
+ else if (funcId == ArenaManager.Instance.funcId)
+ {
+ DisplayArenaButton();
+ }
}
- protected override void OnPreClose()
+ private void PlayerDataRefresh(PlayerDataType type)
{
- base.OnPreClose();
- DungeonManager.Instance.UpdateFBInfoChangeEvent -= OnUpdateFBInfoChangeEvent;
- AdsManager.Instance.OnAdsInfoListUpdateEvent -= OnAdsInfoListUpdateEvent;
- TimeMgr.Instance.OnDayEvent -= OnDayEvent;
- FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
- OnCloseChallengeTabWin?.Invoke();
+ if (type == PlayerDataType.ChallengeVoucher)
+ {
+ DisplayArenaButton();
+ }
}
+
public void Display()
{
DisplayBoneFieldButton();
+ DisplayArenaButton();
+ }
+
+ public void DisplayArenaButton()
+ {
+ int index = 1;
+ int funcId = ArenaManager.Instance.funcId;
+ int redpointId = MainRedDot.ArenaRepoint;
+ bool isLock = FuncOpen.Instance.IsFuncOpen(funcId);
+ int type = ArenaManager.Instance.ChallengeMoneyType;
+ long nowCount = UIHelper.GetMoneyCnt(type);
+ string countInfo = UIHelper.AppendColor(nowCount > 0 ? TextColType.Green : TextColType.Red, Language.Get("Challenge03", nowCount));
+ string lockInfo = !isLock ? Language.Get("Challenge02") : string.Empty;
+ btnArena.Display(index, redpointId, isLock, countInfo, lockInfo, () =>
+ {
+ UIManager.Instance.CloseWindow<ChallengeTabWin>();
+ if (!FuncOpen.Instance.IsFuncOpen(funcId, true))
+ return;
+ UIManager.Instance.OpenWindow<ArenaWin>();
+ });
}
public void DisplayBoneFieldButton()
@@ -79,6 +106,7 @@
string lockInfo = !isLock ? Language.Get("Challenge02") : string.Empty;
btnBoneField.Display(index, redpointId, isLock, countInfo, lockInfo, () =>
{
+ UIManager.Instance.CloseWindow<ChallengeTabWin>();
if (!FuncOpen.Instance.IsFuncOpen(funcId, true))
return;
UIManager.Instance.OpenWindow<BoneFieldWin>();
--
Gitblit v1.8.0