using System; using System.Net; namespace ET { public class AppStart_Init: AEvent { protected override void Run(EventType.AppStart args) { RunAsync(args).Coroutine(); } private async ETTask RunAsync(EventType.AppStart args) { Game.Scene.AddComponent(); await ConfigComponent.Instance.LoadAsync(); StartProcessConfig processConfig = StartProcessConfigCategory.Instance.Get(Game.Options.Process); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); // 发送普通actor消息 Game.Scene.AddComponent(); // 发送location actor消息 Game.Scene.AddComponent(); // 访问location server的组件 Game.Scene.AddComponent(); Game.Scene.AddComponent(); // 数值订阅组件 Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent>(RecastFileReader.Read); Game.Scene.AddComponent(); //Game.Scene.AddComponent("http://127.0.0.1:10086/"); switch (Game.Options.AppType) { case AppType.Server: { Game.Scene.AddComponent(processConfig.InnerIPPort, SessionStreamDispatcherType.SessionStreamDispatcherServerInner); var processScenes = StartSceneConfigCategory.Instance.GetByProcess(Game.Options.Process); foreach (StartSceneConfig startConfig in processScenes) { await SceneFactory.Create(Game.Scene, startConfig.Id, startConfig.InstanceId, startConfig.Zone, startConfig.Name, startConfig.Type, startConfig); } break; } case AppType.Watcher: { StartMachineConfig startMachineConfig = WatcherHelper.GetThisMachineConfig(); WatcherComponent watcherComponent = Game.Scene.AddComponent(); watcherComponent.Start(Game.Options.CreateScenes); Game.Scene.AddComponent(NetworkHelper.ToIPEndPoint($"{startMachineConfig.InnerIP}:{startMachineConfig.WatcherPort}"), SessionStreamDispatcherType.SessionStreamDispatcherServerInner); break; } case AppType.GameTool: break; } if (Game.Options.Console == 1) { Game.Scene.AddComponent(); } } } }