lcy
2025-12-24 6b73bf71ed9b9c7a8f49043499a34bde7260c115
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)