yyl
2025-09-18 865c133f8ead5c407436553b53112eee03ae0836
Main/Main.cs
@@ -32,7 +32,14 @@
        // UIManager.Instance.OpenWindow<LoginWin>();
        Debug.Log("切换到登录场景");
        ConfigManager.Instance.Init();
        GeneralDefine.Init();
#if UNITY_EDITOR
        SysNotifyMgr.Instance.BeforePlayerDataInitializeEvent();
#endif
        StageManager.Instance.ToLoginScene();
        ClearGameData();
    }
    public static async UniTask InitManagers()
@@ -41,6 +48,38 @@
        // 初始化游戏系统
        managers.Add(BattleManager.Instance);
        managers.Add(VirtualPackManager.Instance);
        managers.Add(RoleParticularModel.Instance);
        managers.Add(RechargeManager.Instance);
        managers.Add(RoleParticularModel.Instance);
        managers.Add(StoreModel.Instance);
        managers.Add(PhantasmPavilionModel.Instance);
        managers.Add(FairyModel.Instance);
        managers.Add(TeamManager.Instance);
        managers.Add(TaskManager.Instance);
        managers.Add(DailySpecialsModel.Instance);
        managers.Add(MailManager.Instance);
        managers.Add(PackManager.Instance);
        managers.Add(HappyXBModel.Instance);
        managers.Add(HeroManager.Instance);
        managers.Add(GMCmdManager.Instance);
        managers.Add(FairyEmblemModel.Instance);
        managers.Add(EquipModel.Instance);
        managers.Add(DungeonModel.Instance);
        managers.Add(DailyQuestModel.Instance);
        managers.Add(CustomizedRechargeModel.Instance);
        managers.Add(CustomizedGiftModel.Instance);
        managers.Add(ChatManager.Instance);
        managers.Add(ChatBubbleManager.Instance);
        managers.Add(OfficialRankManager.Instance);
        managers.Add(RankModel.Instance);
        managers.Add(PlayerMainDate.Instance);
        managers.Add(HeroUIManager.Instance);
        managers.Add(InvestModel.Instance);
        managers.Add(BlessLVManager.Instance);
        managers.Add(AutoFightModel.Instance);
        managers.Add(MainLevelManager.Instance);
        managers.Add(BattleSettlementManager.Instance);
        foreach (var manager in managers)
        {
@@ -66,7 +105,8 @@
    public static void OnSwitchToLoginScene()
    {
        ReleaseMgrs();
        //  前面有重新InitManagers了 这里就不在做清除
        // ReleaseMgrs();
    }
    private static void ReleaseMgrs()
@@ -78,14 +118,20 @@
        managers.Clear();
    }
    /// <summary>
    /// 打开登录界面
    /// </summary>
    private static void OpenLoginUI()
    {
    }
    //这里清理时机一定是重新登录/切换账号,而不是短暂的断线重连
    static void ClearGameData()
    {
        DTC0403_tagPlayerLoginLoadOK.finishedLogin = false;
        DTC0102_tagCDBPlayer.isAfterPlayerDataInitialize = false;
        ConfirmCancel.toggleCheckDict.Clear();
    }
}