using System.Collections.Generic; using System.Net; namespace ET { public class AppStartEvent: AEvent { public override async ETTask Run(EventType.AppStart a) { ConfigComponent configComponent = Game.Scene.AddComponent(); Options options = Game.Options; Log.Info($"当前进程:{options.Process}"); StartProcessConfig processConfig = StartProcessConfigCategory.Instance.Get(options.Process); StartZoneConfig startZoneConfig = StartZoneConfigCategory.Instance.Get(options.Process); Game.Scene.AddComponent(startZoneConfig.DBConnection, startZoneConfig.DBName); 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(); Game.Scene.AddComponent(processConfig.InnerAddress); //!自定义组件 Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); List processScenes = StartSceneConfigCategory.Instance.GetByProcess(Game.Options.Process); foreach (StartSceneConfig startConfig in processScenes) { Scene scene = await SceneFactory.Create(Game.Scene, startConfig.SceneId, startConfig.Zone, startConfig.Name, startConfig.Type, startConfig); } } } }