public static void LoadTriggers() { var sqlText = "SELECT * FROM triggers"; var sqlCommand = new MySqlCommand(sqlText, Program.DBHelper.Use()); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var trigger = new Entities.Models.Maps.TriggerModel() { MapID = sqlReader.GetInt32("MapID"), CellID = sqlReader.GetInt32("CellID"), ActionID = sqlReader.GetInt16("ActionID"), Args = sqlReader.GetString("Args"), Conditions = sqlReader.GetString("Conditions"), }; if (ParseTrigger(trigger)) { TriggersList.Add(trigger); } } sqlReader.Close(); Utilities.Loggers.Status.Write(string.Format("Loaded '{0}' triggers from the database !", TriggersList.Count)); }
public static void LoadTriggers() { lock (DatabaseProvider.Locker) { var sqlText = "SELECT * FROM triggers"; var sqlCommand = new MySqlCommand(sqlText, DatabaseProvider.Connection); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var trigger = new Entities.Models.Maps.TriggerModel() { MapID = sqlReader.GetInt32("MapID"), CellID = sqlReader.GetInt32("CellID"), ActionID = sqlReader.GetInt16("ActionID"), Args = sqlReader.GetString("Args"), Conditions = sqlReader.GetString("Conditions"), }; if (ParseTrigger(trigger)) TriggersList.Add(trigger); } sqlReader.Close(); } Utilities.Loggers.Status.Write(string.Format("Loaded '{0}' triggers from the database !", TriggersList.Count)); }
public static bool ParseTrigger(Entities.Models.Maps.TriggerModel trigger) { if (MapsRequests.MapsList.Any(x => x.Model.ID == trigger.MapID)) { MapsRequests.MapsList.First(x => x.Model.ID == trigger.MapID).Triggers.Add(trigger); return(true); } else { return(false); } }
private void ParseCommandAdd(string[] datas) { try { var value = (long)0; if (!long.TryParse(datas[2], out value)) { Client.SendConsoleMessage("Cannot parse your AdminCommand !"); return; } switch (datas[1]) { case "kamas": Client.Player.Kamas += value; Client.SendConsoleMessage("Kamas Added", 0); Client.Player.SendChararacterStats(); break; case "exp": Client.Player.AddExp(value); Client.SendConsoleMessage("Exp Added !", 0); break; case "trigger": var t = new Entities.Models.Maps.TriggerModel(); t.ActionID = 0; t.CellID = Client.Player.MapCell; t.MapID = Client.Player.MapID; t.Conditions = ""; t.Args = string.Format("{0},{1}", value, int.Parse(datas[3])); Client.Player.GetMap().Triggers.Add(t); Entities.Requests.TriggersRequests.InsertTrigger(t); Client.SendConsoleMessage("Trigger Added !", 0); break; case "cellfight": break; } } catch { Client.SendConsoleMessage("Cannot parse your AdminCommand !"); } }
public static void LoadTriggers(int map) { lock (DatabaseProvider.Locker) { var sqlText = "SELECT * FROM triggers WHERE MapID=@mapid"; var sqlCommand = new MySqlCommand(sqlText, DatabaseProvider.Connection); sqlCommand.Parameters.Add(new MySqlParameter("@mapid", map)); var sqlReader = sqlCommand.ExecuteReader(); while (sqlReader.Read()) { var trigger = new Entities.Models.Maps.TriggerModel() { MapID = sqlReader.GetInt32("MapID"), CellID = sqlReader.GetInt32("CellID"), ActionID = sqlReader.GetInt16("ActionID"), Args = sqlReader.GetString("Args"), Conditions = sqlReader.GetString("Conditions"), }; lock (TriggersList) { if (ParseTrigger(trigger)) TriggersList.Add(trigger); } } sqlReader.Close(); } }