UGUIManager.cs 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. using System;
  2. using ET;
  3. using UnityEngine;
  4. using YooAsset;
  5. namespace GFGGame
  6. {
  7. public class UGUIManager : SingletonBase<UGUIManager>
  8. {
  9. public GameObject desktop;
  10. public async void Init()
  11. {
  12. // 1. 加载 UI Canvas
  13. var handle = YooAssets.LoadAssetAsync<GameObject>(ResPathUtil.GetUUIPrefabPath("UICanvas"));
  14. await handle.Task;
  15. var canvas = handle.InstantiateSync();
  16. GameObject.DontDestroyOnLoad(canvas);
  17. desktop = canvas.transform.Find("Desktop").gameObject;
  18. // 2. 按顺序加载 FairyGUI 包
  19. try
  20. {
  21. // 3. 初始化其他逻辑(确保资源已加载)
  22. ViewManager.Init();
  23. LogController.Instance.Init();
  24. GameGlobal.Init();
  25. QDManager.Init();
  26. ViewGlobal.CreatClickEffect(); // 此时资源已就绪
  27. GetGameCfg();
  28. }
  29. catch (System.Exception e)
  30. {
  31. Debug.LogError($"初始化失败: {e}");
  32. }
  33. }
  34. /// <summary>
  35. /// 获取游戏配置
  36. /// </summary>
  37. public static void GetGameCfg()
  38. {
  39. var url = LauncherConfig.cfgUrl.Replace("{cfgName}", GameGlobal.cfgName);
  40. url = url + "?t=" + TimeHelper.ClientNow();
  41. Debug.Log($"正在解压数据");
  42. LauncherView.Instance.SetDesc("正在解压数据...");
  43. HttpTool.Instance.Get(url, (string data) =>
  44. {
  45. //初始化游戏配置
  46. GameConfig.InitData(data);
  47. Debug.Log($"初始化游戏配置");
  48. //缓存一部分配置文件
  49. // FightScoreCfgArray.Instance.Init();
  50. // StudioCfgArray.Instance.Init();
  51. // DailySignCfgArray.Instance.Init();
  52. // DailyLoginCfgArray.Instance.Init();
  53. // DressUpMenuItemCfg2Array.Instance.Init();
  54. // AdCfgArray.Instance.Init();
  55. // ItemTypeCfgArray.Instance.Init();
  56. // GuideCfgArray.Instance.Init();
  57. // SuitCfgArray.Instance.Init();
  58. // ShopCfgArray.Instance.Init();
  59. // SuitFosterCfgArray.Instance.Init();
  60. // VipCfgArray.Instance.Init();
  61. // ActivityRechargeCfgArray.Instance.Init();
  62. // ActivityLuckybonusCfgArray.Instance.Init();
  63. // Activity7DaysTaskCfgArray.Instance.Init();
  64. // Activity7DaysCfgArray.Instance.Init();
  65. // SuitGuideMenuCfgArray.Instance.Init();
  66. // ActivityRecharge2CfgArray.Instance.Init();
  67. // SuitFosterListCfgArray.Instance.Init();
  68. // TaskCfgArray.Instance.Init();
  69. LauncherView.Instance.Close();
  70. //显示登录
  71. LoginController.ShowLogin();
  72. });
  73. }
  74. public void Show()
  75. {
  76. }
  77. public void Hide()
  78. {
  79. }
  80. }
  81. }