public static void Start() { serverConfig = ConfigElement.GetAll(typeof(ServerConfig)); levelConfig = ConfigElement.GetAll(typeof(LevelConfig)); zoneConfig = ConfigElement.GetAll(typeof(ZoneConfig)); #pragma warning disable 0618 Player.players = PlayerInfo.Online.list; Server.levels = LevelInfo.Loaded.list; #pragma warning restore 0618 StartTime = DateTime.UtcNow; shuttingDown = false; Logger.Log(LogType.SystemActivity, "Starting Server"); ServicePointManager.Expect100Continue = false; CheckFile("MySql.Data.dll"); CheckFile("sqlite3_x32.dll"); CheckFile("sqlite3_x64.dll"); CheckFile("LibNoise.dll"); EnsureFilesExist(); MoveSqliteDll(); MoveOutdatedFiles(); LoadAllSettings(); SrvProperties.GenerateSalt(); InitDatabase(); Economy.LoadDatabase(); Background.QueueOnce(UpgradeTasks.CombineEnvFiles); Background.QueueOnce(LoadMainLevel); Plugin.LoadAll(); Background.QueueOnce(LoadAutoloadMaps); Background.QueueOnce(UpgradeTasks.MovePreviousLevelFiles); Background.QueueOnce(UpgradeTasks.UpgradeOldTempranks); Background.QueueOnce(UpgradeTasks.UpgradeDBTimeSpent); Background.QueueOnce(InitPlayerLists); Background.QueueOnce(UpgradeTasks.UpgradeBots); Background.QueueOnce(SetupSocket); Background.QueueOnce(InitTimers); Background.QueueOnce(InitRest); Background.QueueOnce(InitHeartbeat); Devs.Clear(); Mods.Clear(); Background.QueueOnce(InitTasks.UpdateStaffList); ServerTasks.QueueTasks(); Background.QueueRepeat(ThreadSafeCache.DBCache.CleanupTask, null, TimeSpan.FromMinutes(5)); }
static void LoadAllPlugins(SchedulerTask task) { Plugin.LoadAll(); }