diff options
author | Melanie | 2012-10-16 04:30:01 +0100 |
---|---|---|
committer | Melanie | 2012-10-16 04:30:01 +0100 |
commit | fa52effb279355ef731725c04c3b659f972f3903 (patch) | |
tree | 7d9029b0ded43814206112d5e5b2115b9b463fc7 /OpenSim/Region/ScriptEngine/Shared | |
parent | Fix a merge issue (diff) | |
parent | minor: Comment out log message on every FRIENDS SIM CONNECTOR request for now. (diff) | |
download | opensim-SC-fa52effb279355ef731725c04c3b659f972f3903.zip opensim-SC-fa52effb279355ef731725c04c3b659f972f3903.tar.gz opensim-SC-fa52effb279355ef731725c04c3b659f972f3903.tar.bz2 opensim-SC-fa52effb279355ef731725c04c3b659f972f3903.tar.xz |
Merge branch 'master' into careminster
Conflicts:
OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 49f0ef7..7cf193d 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -59,6 +59,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion; | |||
59 | using PresenceInfo = OpenSim.Services.Interfaces.PresenceInfo; | 59 | using PresenceInfo = OpenSim.Services.Interfaces.PresenceInfo; |
60 | using PrimType = OpenSim.Region.Framework.Scenes.PrimType; | 60 | using PrimType = OpenSim.Region.Framework.Scenes.PrimType; |
61 | using AssetLandmark = OpenSim.Framework.AssetLandmark; | 61 | using AssetLandmark = OpenSim.Framework.AssetLandmark; |
62 | using RegionFlags = OpenSim.Framework.RegionFlags; | ||
62 | 63 | ||
63 | using LSL_Float = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat; | 64 | using LSL_Float = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat; |
64 | using LSL_Integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; | 65 | using LSL_Integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; |
@@ -6918,7 +6919,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6918 | GridInstantMessage msg = new GridInstantMessage(World, | 6919 | GridInstantMessage msg = new GridInstantMessage(World, |
6919 | m_host.OwnerID, m_host.Name, destID, | 6920 | m_host.OwnerID, m_host.Name, destID, |
6920 | (byte)InstantMessageDialog.TaskInventoryOffered, | 6921 | (byte)InstantMessageDialog.TaskInventoryOffered, |
6921 | false, string.Format("'{0}'"), | 6922 | false, string.Format("'{0}'", category), |
6922 | // We won't go so far as to add a SLURL, but this is the format used by LL as of 2012-10-06 | 6923 | // We won't go so far as to add a SLURL, but this is the format used by LL as of 2012-10-06 |
6923 | // false, string.Format("'{0}' ( http://slurl.com/secondlife/{1}/{2}/{3}/{4} )", category, World.Name, (int)pos.X, (int)pos.Y, (int)pos.Z), | 6924 | // false, string.Format("'{0}' ( http://slurl.com/secondlife/{1}/{2}/{3}/{4} )", category, World.Name, (int)pos.X, (int)pos.Y, (int)pos.Z), |
6924 | folderID, false, pos, | 6925 | folderID, false, pos, |
@@ -10058,11 +10059,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
10058 | 10059 | ||
10059 | GridRegion info; | 10060 | GridRegion info; |
10060 | 10061 | ||
10061 | if (m_ScriptEngine.World.RegionInfo.RegionName == simulator) //Det data for this simulator? | 10062 | if (World.RegionInfo.RegionName == simulator) |
10062 | 10063 | info = new GridRegion(World.RegionInfo); | |
10063 | info = new GridRegion(m_ScriptEngine.World.RegionInfo); | ||
10064 | else | 10064 | else |
10065 | info = m_ScriptEngine.World.GridService.GetRegionByName(m_ScriptEngine.World.RegionInfo.ScopeID, simulator); | 10065 | info = World.GridService.GetRegionByName(m_ScriptEngine.World.RegionInfo.ScopeID, simulator); |
10066 | 10066 | ||
10067 | switch (data) | 10067 | switch (data) |
10068 | { | 10068 | { |
@@ -10072,9 +10072,24 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
10072 | ScriptSleep(1000); | 10072 | ScriptSleep(1000); |
10073 | return UUID.Zero.ToString(); | 10073 | return UUID.Zero.ToString(); |
10074 | } | 10074 | } |
10075 | if (m_ScriptEngine.World.RegionInfo.RegionName != simulator) | 10075 | |
10076 | bool isHypergridRegion = false; | ||
10077 | |||
10078 | if (World.RegionInfo.RegionName != simulator && info.RegionSecret != "") | ||
10079 | { | ||
10080 | // Hypergrid is currently placing real destination region co-ords into RegionSecret. | ||
10081 | // But other code can also use this field for a genuine RegionSecret! Therefore, if | ||
10082 | // anything is present we need to disambiguate. | ||
10083 | // | ||
10084 | // FIXME: Hypergrid should be storing this data in a different field. | ||
10085 | RegionFlags regionFlags | ||
10086 | = (RegionFlags)m_ScriptEngine.World.GridService.GetRegionFlags( | ||
10087 | info.ScopeID, info.RegionID); | ||
10088 | isHypergridRegion = (regionFlags & RegionFlags.Hyperlink) != 0; | ||
10089 | } | ||
10090 | |||
10091 | if (isHypergridRegion) | ||
10076 | { | 10092 | { |
10077 | //Hypergrid Region co-ordinates | ||
10078 | uint rx = 0, ry = 0; | 10093 | uint rx = 0, ry = 0; |
10079 | Utils.LongToUInts(Convert.ToUInt64(info.RegionSecret), out rx, out ry); | 10094 | Utils.LongToUInts(Convert.ToUInt64(info.RegionSecret), out rx, out ry); |
10080 | 10095 | ||
@@ -10085,7 +10100,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
10085 | } | 10100 | } |
10086 | else | 10101 | else |
10087 | { | 10102 | { |
10088 | //Local-cooridnates | 10103 | // Local grid co-oridnates |
10089 | reply = new LSL_Vector( | 10104 | reply = new LSL_Vector( |
10090 | info.RegionLocX, | 10105 | info.RegionLocX, |
10091 | info.RegionLocY, | 10106 | info.RegionLocY, |