public static void LoadMaps() { var sqlText = "SELECT * FROM maps"; var sqlCommand = new MySqlCommand(sqlText, Program.DBHelper.Use()); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var map = new Models.Maps.MapModel() { ID = sqlReader.GetInt32("id"), Date = sqlReader.GetString("date"), Width = sqlReader.GetInt16("width"), Height = sqlReader.GetInt16("heigth"), Capabilities = sqlReader.GetInt16("capabilities"), Mappos = sqlReader.GetString("mappos"), MapData = sqlReader.GetString("mapData"), Key = sqlReader.GetString("key"), MaxMonstersGroup = sqlReader.GetInt16("numgroup"), MaxGroupSize = sqlReader.GetInt16("groupsize"), }; foreach (var newMonster in sqlReader.GetString("monsters").Split('|')) { if (newMonster == "") { continue; } var infos = newMonster.Split(','); if (infos.Length < 2) { continue; } if (infos[1].Length < 1) { continue; } int creature = int.Parse(infos[0]); if (!map.Monsters.ContainsKey(creature)) { map.Monsters.Add(creature, new List <int>()); } map.Monsters[creature].Add(int.Parse(infos[1])); } map.ParsePos(); MapsList.Add(new Map(map)); } sqlReader.Close(); Utilities.Loggers.Status.Write(string.Format("Loaded '{0}' maps from the database !", MapsList.Count)); }
public static void LoadMaps() { lock (DatabaseHandler.ConnectionLocker) { var sqlText = "SELECT * FROM datas_maps"; var sqlCommand = new MySqlCommand(sqlText, DatabaseHandler.Connection); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var map = new Models.Maps.MapModel(); map.ID = sqlReader.GetInt32("id"); map.Date = sqlReader.GetInt32("date"); map.Width = sqlReader.GetInt16("width"); map.Height = sqlReader.GetInt16("heigth"); map.Capabilities = sqlReader.GetInt16("capabilities"); map.Mappos = sqlReader.GetString("mappos"); map.MapData = sqlReader.GetString("mapData"); map.Key = sqlReader.GetString("key"); map.MaxMonstersGroup = sqlReader.GetInt16("maxgroups"); map.MaxGroupSize = sqlReader.GetInt16("groupsize"); foreach (var newMonster in sqlReader.GetString("monsters").Split('|')) { if (newMonster == "") continue; var infos = newMonster.Split(','); if (infos.Length < 2) continue; if (infos[1].Length < 1) continue; lock (map.Monsters) { if (!map.Monsters.ContainsKey(int.Parse(infos[0]))) map.Monsters.Add(int.Parse(infos[0]), new List<int>()); } lock(map.Monsters[int.Parse(infos[0])]) map.Monsters[int.Parse(infos[0])].Add(int.Parse(infos[1])); } map.ParsePos(); lock(MapsList) MapsList.Add(new Realm.Maps.Map(map)); } sqlReader.Close(); } Utilities.Loggers.StatusLogger.Write(string.Format("Loaded @'{0}' maps@ from the database !", MapsList.Count)); }
public static void LoadMaps() { lock (DatabaseProvider.Locker) { var sqlText = "SELECT * FROM maps"; var sqlCommand = new MySqlCommand(sqlText, DatabaseProvider.Connection); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var map = new Models.Maps.MapModel() { ID = sqlReader.GetInt32("id"), Date = sqlReader.GetString("date"), Width = sqlReader.GetInt16("width"), Height = sqlReader.GetInt16("heigth"), Capabilities = sqlReader.GetInt16("capabilities"), Mappos = sqlReader.GetString("mappos"), MapData = sqlReader.GetString("mapData"), Key = sqlReader.GetString("key"), MaxMonstersGroup = sqlReader.GetInt16("numgroup"), MaxGroupSize = sqlReader.GetInt16("groupsize"), }; foreach (var newMonster in sqlReader.GetString("monsters").Split('|')) { if (newMonster == "") continue; var infos = newMonster.Split(','); if (infos.Length < 2) continue; if (infos[1].Length < 1) continue; int creature = int.Parse(infos[0]); if (!map.Monsters.ContainsKey(creature)) map.Monsters.Add(creature, new List<int>()); map.Monsters[creature].Add(int.Parse(infos[1])); } map.ParsePos(); MapsList.Add(new Game.Maps.Map(map)); } sqlReader.Close(); } Utilities.Loggers.Status.Write(string.Format("Loaded '{0}' maps from the database !", MapsList.Count)); }