SceneChangeStart_AddComponent.cs 918 B

1234567891011121314151617181920212223242526272829303132
  1. namespace ET
  2. {
  3. public class SceneChangeStart_AddComponent: AEvent<EventType.SceneChangeStart>
  4. {
  5. protected override async ETTask Run(EventType.SceneChangeStart args)
  6. {
  7. await ETTask.CompletedTask;
  8. Scene zoneScene = args.ZoneScene;
  9. // 加载场景资源
  10. await ResourcesComponent.Instance.LoadBundleAsync("map.unity3d");
  11. // 切换到map场景
  12. SceneChangeComponent sceneChangeComponent = null;
  13. try
  14. {
  15. sceneChangeComponent = Game.Scene.AddComponent<SceneChangeComponent>();
  16. {
  17. await sceneChangeComponent.ChangeSceneAsync("Map");
  18. }
  19. }
  20. finally
  21. {
  22. sceneChangeComponent?.Dispose();
  23. }
  24. args.ZoneScene.AddComponent<OperaComponent>();
  25. }
  26. }
  27. }