EntryEvent3_InitClient.cs 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. using System;
  2. using System.IO;
  3. namespace ET.Client
  4. {
  5. [Event(SceneType.Process)]
  6. public class EntryEvent3_InitClient: AEvent<ET.EventType.EntryEvent3>
  7. {
  8. protected override async ETTask Run(Scene scene, ET.EventType.EntryEvent3 args)
  9. {
  10. // 加载配置
  11. Root.Instance.Scene.AddComponent<ResourcesComponent>();
  12. Root.Instance.Scene.AddComponent<GlobalComponent>();
  13. await ResourcesComponent.Instance.LoadBundleAsync("unit.unity3d");
  14. Game.AddSingleton<GameUtil>();
  15. Game.AddSingleton<GameSetting>();
  16. Game.AddSingleton<SoundManager>();
  17. Game.AddSingleton<GameObjectPool>();
  18. Game.AddSingleton<ConfigComponent>();
  19. Game.AddSingleton<CommonUtil>();
  20. Game.AddSingleton<RequestServerUtil>();
  21. Scene clientScene = await SceneFactory.CreateClientScene(1, "Game");
  22. await EventSystem.Instance.PublishAsync(clientScene, new EventType.AppStartInitFinish());
  23. }
  24. }
  25. }