public async void Start() { Config.Config config = ServiceProvider.GetService <Config.Config>(); await config.Initialise(); await ServiceProvider.GetService <PreReqValidation>().Initialise(); CharTemplateTable.Initialize(); // TODO: refactor NetworkBlock NetworkBlock.Instance.Initialize(); GameTime.Initialize(); await ServiceProvider.GetService <IdFactory>().Initialise(); L2World.Initialize(); MapRegionTable.Initialize(); ZoneTable.Initialize(); await ServiceProvider.GetService <ItemTable>().Initialise(); ItemHandler.Initialize(); NpcTable.Initialize(); Capsule.Initialize(); AttackStanceManager.Initialize(); BlowFishKeygen.GenerateKeys(); await ServiceProvider.GetService <IAdminCommandHandler>().Initialise(); await ServiceProvider.GetService <AnnouncementManager>().Initialise(); StaticObjTable.Initialize(); await ServiceProvider.GetService <SpawnTable>().Initialise(); await ServiceProvider.GetService <HtmCache>().Initialise(); // TODO: review plugin system //PluginManager.Instance.Initialize(this); ServiceProvider.GetService <AuthThread>().Initialise(); _listener = new TcpListener(IPAddress.Any, config.ServerConfig.Port); try { _listener.Start(); } catch (SocketException ex) { Log.Halt($"Socket Error: '{ex.SocketErrorCode}'. Message: '{ex.Message}' (Error Code: '{ex.NativeErrorCode}')"); } Log.Info($"Listening Gameservers on port {config.ServerConfig.Port}"); Task.Factory.StartNew(WaitForClients); }
internal void SetDoor(int id) { if (doors == null) { doors = new List <L2Door>(); } L2Door door = StaticObjTable.getInstance().getDoor(id); door.structure = this; doors.Add(door); }
public void Start() { Console.Title = "L2dotNET Gameserver"; CLogger.form(); Cfg.init("all"); CharTemplateTable.Instance.Initialize(); NetworkBlock.getInstance(); GameTime.getInstance(); IdFactory.Instance.Initialize(); L2World.Instance.Initialize(); // MapRegionTable.getInstance(); ZoneTable.getInstance(); NpcTable.getInstance(); NpcData.getInstance(); // SpawnTable.getInstance(); StaticObjTable.getInstance().read(); StructureTable.getInstance().read(); // TSkillTable.getInstance(); ItemTable.getInstance(); ItemHandler.getInstance(); MultiSell.getInstance(); Capsule.getInstance(); RecipeTable.getInstance(); MonsterRace.getInstance(); AIManager.getInstance(); BlowFishKeygen.genKey(); CLogger.info("generated 20 blowfish keys"); AdminAccess.Instance.Initialize();; QuestManager.getInstance(); AnnouncementManager.Instance.Initialize(); AllianceTable.getInstance(); ClanTable.getInstance(); CLogger.info("NpcServer: "); StaticObjTable.getInstance().Spawn(); MonsterRace.getInstance().Spawn(); // SpawnTable.getInstance().Spawn(); StructureTable.getInstance().init(); HtmCache.getInstance(); AuthThread.getInstance(); // GeoData.getInstance(); CLogger.extra_info("listening game clients on port " + Cfg.SERVER_PORT); _listener = new TcpListener(Cfg.SERVER_PORT); _listener.Start(); TcpClient clientSocket = default(TcpClient); while (true) { clientSocket = _listener.AcceptTcpClient(); accept(clientSocket); } }