/// <summary> /// Adds a new telehub in the region. Replaces an old one automatically. /// </summary> /// <param name = "telehub"></param> public void AddTelehub(Telehub telehub, ulong regionhandle) { //Look for a telehub first. if (FindTelehub(new UUID(telehub.RegionID), 0) != null) { //Found one, time to update it. GD.Update("telehubs", new object[] { telehub.TelehubLocX, telehub.TelehubLocY, telehub.TelehubLocZ, telehub.TelehubRotX, telehub.TelehubRotY, telehub.TelehubRotZ, telehub.BuildFromList(telehub.SpawnPos), telehub.ObjectUUID, telehub.Name.MySqlEscape(50) }, new[] { "TelehubLocX", "TelehubLocY", "TelehubLocZ", "TelehubRotX", "TelehubRotY", "TelehubRotZ", "Spawns", "ObjectUUID", "Name" }, new[] {"RegionID"}, new object[] {telehub.RegionID}); } else { //Make a new one List<object> values = new List<object> { telehub.RegionID, telehub.RegionLocX, telehub.RegionLocY, telehub.TelehubLocX, telehub.TelehubLocY, telehub.TelehubLocZ, telehub.TelehubRotX, telehub.TelehubRotY, telehub.TelehubRotZ, telehub.BuildFromList(telehub.SpawnPos), telehub.ObjectUUID, telehub.Name.MySqlEscape(50) }; GD.Insert("telehubs", values.ToArray()); } }
/// <summary> /// Adds a new telehub in the region. Replaces an old one automatically. /// </summary> /// <param name="regionID"></param> /// <param name="position">Telehub position</param> /// <param name="regionPosX">Region Position in meters</param> /// <param name="regionPosY">Region Position in meters</param> public void AddTelehub(Telehub telehub, UUID SessionID) { //Look for a telehub first. if (FindTelehub(new UUID(telehub.RegionID)) != null) { //Found one, time to update it. GD.Update("telehubs", new object[] { telehub.TelehubLocX, telehub.TelehubLocY, telehub.TelehubLocZ, telehub.TelehubRotX, telehub.TelehubRotY, telehub.TelehubRotZ, telehub.BuildFromList(telehub.SpawnPos), telehub.ObjectUUID, telehub.Name }, new string[] { "TelehubLocX", "TelehubLocY", "TelehubLocZ", "TelehubRotX", "TelehubRotY", "TelehubRotZ", "Spawns", "ObjectUUID", "Name" }, new string[] { "RegionID" }, new object[] { telehub.RegionID }); } else { //Make a new one List<object> values = new List<object>(); values.Add(telehub.RegionID); values.Add(telehub.RegionLocX); values.Add(telehub.RegionLocY); values.Add(telehub.TelehubLocX); values.Add(telehub.TelehubLocY); values.Add(telehub.TelehubLocZ); values.Add(telehub.TelehubRotX); values.Add(telehub.TelehubRotY); values.Add(telehub.TelehubRotZ); values.Add(telehub.BuildFromList(telehub.SpawnPos)); values.Add(telehub.ObjectUUID); values.Add(telehub.Name); GD.Insert("telehubs", values.ToArray()); } }
public void AddTelehub(Telehub telehub, ulong regionhandle) { object remoteValue = DoRemote(telehub, regionhandle); if (remoteValue != null || m_doRemoteOnly) return; //Look for a telehub first. if (FindTelehub(new UUID(telehub.RegionID), 0) != null) { Dictionary<string, object> values = new Dictionary<string, object>(); values["TelehubLocX"] = telehub.TelehubLocX; values["TelehubLocY"] = telehub.TelehubLocY; values["TelehubLocZ"] = telehub.TelehubLocZ; values["TelehubRotX"] = telehub.TelehubRotX; values["TelehubRotY"] = telehub.TelehubRotY; values["TelehubRotZ"] = telehub.TelehubRotZ; values["Spawns"] = telehub.BuildFromList(telehub.SpawnPos); values["ObjectUUID"] = telehub.ObjectUUID; values["Name"] = telehub.Name.MySqlEscape(50); QueryFilter filter = new QueryFilter(); filter.andFilters["RegionID"] = telehub.RegionID; //Found one, time to update it. GD.Update("telehubs", values, null, filter, null, null); } else { //Make a new one GD.Insert("telehubs", new object[]{ telehub.RegionID, telehub.RegionLocX, telehub.RegionLocY, telehub.TelehubLocX, telehub.TelehubLocY, telehub.TelehubLocZ, telehub.TelehubRotX, telehub.TelehubRotY, telehub.TelehubRotZ, telehub.BuildFromList(telehub.SpawnPos), telehub.ObjectUUID, telehub.Name.MySqlEscape(50) }); } }