From 6b73bf71ed9b9c7a8f49043499a34bde7260c115 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期三, 24 十二月 2025 11:59:05 +0800
Subject: [PATCH] 325 阵容推荐-客户端
---
Main/System/LineupRecommend/LineupRecommendCell.cs | 9 ++++
Main/Utility/EnumHelper.cs | 1
Main/System/HeroUI/HeroPosWin.cs | 28 +++++++++++++-
Main/System/LineupRecommend/LineupRecommendManager.cs | 13 +++---
Main/System/HeroUI/HeroListWin.cs | 21 +++++++++-
5 files changed, 60 insertions(+), 12 deletions(-)
diff --git a/Main/System/HeroUI/HeroListWin.cs b/Main/System/HeroUI/HeroListWin.cs
index 914d0f0..3c5fedd 100644
--- a/Main/System/HeroUI/HeroListWin.cs
+++ b/Main/System/HeroUI/HeroListWin.cs
@@ -1,3 +1,4 @@
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@@ -59,6 +60,7 @@
// HeroManager.Instance.onHeroDeleteEvent += HeroDeleteEvent;
HeroUIManager.Instance.SortHeroList();
UIManager.Instance.OnOpenWindow += OnOpenWindow;
+ FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
// CreateScroller();
Refresh();
fiterManager.Display(0, SelectJobCountry);
@@ -73,8 +75,15 @@
UIManager.Instance.OnCloseWindow -= OnCloseWindow;
// HeroManager.Instance.onHeroDeleteEvent -= HeroDeleteEvent;
UIManager.Instance.OnOpenWindow -= OnOpenWindow;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
}
+ private void OnFuncStateChangeEvent(int obj)
+ {
+ if (obj != (int)FuncOpenEnum.LineupRecommend)
+ return;
+ DisplayLineupRecommend();
+ }
private void OnCloseWindow(UIBase closeUI)
{
@@ -111,7 +120,7 @@
HeroUIManager.Instance.isOpenHeroTip = true;
}
}
-
+
int FindJumpIndexByHeroID(int heroID)
{
@@ -137,7 +146,7 @@
OnBattleTeamAttrPer();
RefreshPackCount();
-
+ DisplayLineupRecommend();
}
@@ -241,7 +250,7 @@
}
heroListScroller.Restart();
heroListScroller.lockType = EnhanceLockType.KeepVertical;
-
+
}
int GetAttrActiveHeroCount()
@@ -290,4 +299,10 @@
RefreshPackCount();
}
+
+ public void DisplayLineupRecommend()
+ {
+ bool isOpen = FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.LineupRecommend);
+ lineupRecommendBtn.SetActive(isOpen);
+ }
}
\ No newline at end of file
diff --git a/Main/System/HeroUI/HeroPosWin.cs b/Main/System/HeroUI/HeroPosWin.cs
index 846a166..868bb05 100644
--- a/Main/System/HeroUI/HeroPosWin.cs
+++ b/Main/System/HeroUI/HeroPosWin.cs
@@ -43,6 +43,9 @@
[SerializeField] HeroHeadBaseCell flyHead;
[SerializeField] CanvasGroup flyAlphaTween;
+
+ [SerializeField] ButtonEx lineupRecommendBtn; //闃靛鎺ㄨ崘
+
Sequence sequence;
CancellationTokenSource _cts;
Queue<int> showConnectTipQueue = new Queue<int>();
@@ -105,6 +108,11 @@
UIManager.Instance.OpenWindow<HeroFormationWin>();
});
+ lineupRecommendBtn.AddListener(() =>
+ {
+ UIManager.Instance.OpenWindow<LineupRecommendBaseWin>();
+ });
+
m_IsToggleOn = LocalSave.GetBool("ShowConn" + PlayerDatas.Instance.baseData.PlayerID, false);
fiterManager = HeroSelectBehaviour.Create(heroSelectBehaviour);
}
@@ -116,10 +124,12 @@
heroListScroller.OnRefreshCell += OnRefreshCell;
HeroUIManager.Instance.OnTeamPosChangeEvent += TeamChangeEvent;
TeamManager.Instance.OnTeamChange += OnTeamChange;
+ FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
ShowFuncBtn();
SelectTiltleBtn();
// CreateScroller();
Display();
+ DisplayLineupRecommend();
}
protected override void OnPreClose()
@@ -128,7 +138,21 @@
heroListScroller.OnRefreshCell -= OnRefreshCell;
HeroUIManager.Instance.OnTeamPosChangeEvent -= TeamChangeEvent;
TeamManager.Instance.OnTeamChange -= OnTeamChange;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
TeamManager.Instance.GetTeam(HeroUIManager.Instance.selectTeamType).RestoreTeam();
+ }
+
+ private void OnFuncStateChangeEvent(int obj)
+ {
+ if (obj != (int)FuncOpenEnum.LineupRecommend)
+ return;
+ DisplayLineupRecommend();
+ }
+
+ private void DisplayLineupRecommend()
+ {
+ bool isOpen = FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.LineupRecommend);
+ lineupRecommendBtn.SetActive(isOpen);
}
void ShowFuncBtn()
@@ -492,7 +516,7 @@
{
team.AddHero(HeroManager.Instance.GetHero(guidList[i]), i, true);
}
- }
+ }
TeamChangeEvent(new List<int>() { 0, 1, 2, 3, 4, 5 }, -1, Vector3.zero);
@@ -516,7 +540,7 @@
Display();
heroListScroller.m_Scorller.RefreshActiveCellViews();
}
-
+
protected void OnTeamChange(TeamType teamType)
{
if (HeroUIManager.Instance.selectTeamType == teamType)
diff --git a/Main/System/LineupRecommend/LineupRecommendCell.cs b/Main/System/LineupRecommend/LineupRecommendCell.cs
index 7d5bf70..6e90a42 100644
--- a/Main/System/LineupRecommend/LineupRecommendCell.cs
+++ b/Main/System/LineupRecommend/LineupRecommendCell.cs
@@ -53,7 +53,14 @@
txtLineupDesc.text = GetDesc(recommendID);
btnUse.SetListener(() =>
{
- manager.UseTeam(recommendID);
+ ConfirmCancel.ShowPopConfirm(Language.Get("L1003"), Language.Get("LineupRecommend06"),
+ (bool isOK) =>
+ {
+ if (isOK)
+ {
+ manager.UseTeam(recommendID);
+ }
+ });
});
btnOff.SetListener(() =>
{
diff --git a/Main/System/LineupRecommend/LineupRecommendManager.cs b/Main/System/LineupRecommend/LineupRecommendManager.cs
index cc37550..dcdf40a 100644
--- a/Main/System/LineupRecommend/LineupRecommendManager.cs
+++ b/Main/System/LineupRecommend/LineupRecommendManager.cs
@@ -40,9 +40,10 @@
private void OnFuncStateChangeEvent(int obj)
{
- if (obj != funcId)
- return;
- UpdateRedPoint();
+ if (obj == (int)FuncOpenEnum.Hero || obj == (int)FuncOpenEnum.LineupRecommend)
+ {
+ UpdateRedPoint();
+ }
}
private void OnPlayerLoginOk()
@@ -256,15 +257,15 @@
}
return false;
}
- readonly int funcId = 1;//姝﹀皢
Redpoint redpoint = new Redpoint(MainRedDot.HeroCardRedpoint, MainRedDot.LineupRecommendRepoint);
public void UpdateRedPoint()
{
redpoint.state = RedPointState.None;
//姝﹀皢娌″紑涓嶅埛绾㈢偣
- if (!FuncOpen.Instance.IsFuncOpen(funcId))
+ if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Hero))
return;
-
+ if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.LineupRecommend))
+ return;
if (TryGetJumpIndex(out int index))
{
redpoint.state = RedPointState.Simple;
diff --git a/Main/Utility/EnumHelper.cs b/Main/Utility/EnumHelper.cs
index ce8fa28..5747238 100644
--- a/Main/Utility/EnumHelper.cs
+++ b/Main/Utility/EnumHelper.cs
@@ -844,6 +844,7 @@
OSGala = 47, //寮�鏈嶇洓鍏告椿鍔�
FunctionPreview = 48, //鍔熻兘棰勮
HeroFatesUpgrade = 49, //瀹跨紭鍗囩骇
+ LineupRecommend = 50, //闃靛鎺ㄨ崘
}
--
Gitblit v1.8.0