aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie Thielker2010-08-07 05:45:52 +0200
committerMelanie2010-08-07 05:33:49 +0100
commit00fd2e0446382af1a3581c8feec359cad5b939aa (patch)
tree9ace6b554885a4771862967bf928bb59965e0312 /OpenSim/Region
parentChange the (hackish) constant to match the changed enum for attachs (diff)
downloadopensim-SC-00fd2e0446382af1a3581c8feec359cad5b939aa.zip
opensim-SC-00fd2e0446382af1a3581c8feec359cad5b939aa.tar.gz
opensim-SC-00fd2e0446382af1a3581c8feec359cad5b939aa.tar.bz2
opensim-SC-00fd2e0446382af1a3581c8feec359cad5b939aa.tar.xz
Correct display of landmark about info. Also correct region maturity rating
in LM info. Maturity is NOT the parcel's setting, that is only for the image and text. Parcel maturity is governed by region maturity.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs6
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsIn/Land/LandServiceInConnectorModule.cs4
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs4
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/RemoteLandServiceConnector.cs6
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs6
5 files changed, 17 insertions, 9 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index c59eedf..7bf7511 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2656,7 +2656,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2656 2656
2657 // Bit 0: Mature, bit 7: on sale, other bits: no idea 2657 // Bit 0: Mature, bit 7: on sale, other bits: no idea
2658 reply.Data.Flags = (byte)( 2658 reply.Data.Flags = (byte)(
2659 ((land.Flags & (uint)ParcelFlags.MaturePublish) != 0 ? (1 << 0) : 0) + 2659 (info.AccessLevel > 13 ? (1 << 0) : 0) +
2660 ((land.Flags & (uint)ParcelFlags.ForSale) != 0 ? (1 << 7) : 0)); 2660 ((land.Flags & (uint)ParcelFlags.ForSale) != 0 ? (1 << 7) : 0));
2661 2661
2662 Vector3 pos = land.UserLocation; 2662 Vector3 pos = land.UserLocation;
@@ -2664,8 +2664,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2664 { 2664 {
2665 pos = (land.AABBMax + land.AABBMin) * 0.5f; 2665 pos = (land.AABBMax + land.AABBMin) * 0.5f;
2666 } 2666 }
2667 reply.Data.GlobalX = info.RegionLocX * Constants.RegionSize + x; 2667 reply.Data.GlobalX = info.RegionLocX + x;
2668 reply.Data.GlobalY = info.RegionLocY * Constants.RegionSize + y; 2668 reply.Data.GlobalY = info.RegionLocY + y;
2669 reply.Data.GlobalZ = pos.Z; 2669 reply.Data.GlobalZ = pos.Z;
2670 reply.Data.SimName = Utils.StringToBytes(info.RegionName); 2670 reply.Data.SimName = Utils.StringToBytes(info.RegionName);
2671 reply.Data.SnapshotID = land.SnapshotID; 2671 reply.Data.SnapshotID = land.SnapshotID;
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsIn/Land/LandServiceInConnectorModule.cs b/OpenSim/Region/CoreModules/ServiceConnectorsIn/Land/LandServiceInConnectorModule.cs
index bce160a..23251c9 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsIn/Land/LandServiceInConnectorModule.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsIn/Land/LandServiceInConnectorModule.cs
@@ -121,7 +121,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
121 121
122 #region ILandService 122 #region ILandService
123 123
124 public LandData GetLandData(ulong regionHandle, uint x, uint y) 124 public LandData GetLandData(ulong regionHandle, uint x, uint y, out byte regionAccess)
125 { 125 {
126 m_log.DebugFormat("[LAND IN CONNECTOR]: GetLandData for {0}. Count = {1}", 126 m_log.DebugFormat("[LAND IN CONNECTOR]: GetLandData for {0}. Count = {1}",
127 regionHandle, m_Scenes.Count); 127 regionHandle, m_Scenes.Count);
@@ -130,10 +130,12 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
130 if (s.RegionInfo.RegionHandle == regionHandle) 130 if (s.RegionInfo.RegionHandle == regionHandle)
131 { 131 {
132 m_log.Debug("[LAND IN CONNECTOR]: Found region to GetLandData from"); 132 m_log.Debug("[LAND IN CONNECTOR]: Found region to GetLandData from");
133 regionAccess = s.RegionInfo.AccessLevel;
133 return s.GetLandData(x, y); 134 return s.GetLandData(x, y);
134 } 135 }
135 } 136 }
136 m_log.DebugFormat("[LAND IN CONNECTOR]: region handle {0} not found", regionHandle); 137 m_log.DebugFormat("[LAND IN CONNECTOR]: region handle {0} not found", regionHandle);
138 regionAccess = 42;
137 return null; 139 return null;
138 } 140 }
139 141
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs
index cb87f6f..e15f624 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs
@@ -116,8 +116,9 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
116 116
117 #region ILandService 117 #region ILandService
118 118
119 public LandData GetLandData(ulong regionHandle, uint x, uint y) 119 public LandData GetLandData(ulong regionHandle, uint x, uint y, out byte regionAccess)
120 { 120 {
121 regionAccess = 2;
121 m_log.DebugFormat("[LAND CONNECTOR]: request for land data in {0} at {1}, {2}", 122 m_log.DebugFormat("[LAND CONNECTOR]: request for land data in {0} at {1}, {2}",
122 regionHandle, x, y); 123 regionHandle, x, y);
123 124
@@ -126,6 +127,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
126 if (s.RegionInfo.RegionHandle == regionHandle) 127 if (s.RegionInfo.RegionHandle == regionHandle)
127 { 128 {
128 LandData land = s.GetLandData(x, y); 129 LandData land = s.GetLandData(x, y);
130 regionAccess = s.RegionInfo.AccessLevel;
129 return land; 131 return land;
130 } 132 }
131 } 133 }
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/RemoteLandServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/RemoteLandServiceConnector.cs
index 153c2a5..2386060 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/RemoteLandServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/RemoteLandServiceConnector.cs
@@ -108,13 +108,13 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
108 108
109 #region ILandService 109 #region ILandService
110 110
111 public override LandData GetLandData(ulong regionHandle, uint x, uint y) 111 public override LandData GetLandData(ulong regionHandle, uint x, uint y, out byte regionAccess)
112 { 112 {
113 LandData land = m_LocalService.GetLandData(regionHandle, x, y); 113 LandData land = m_LocalService.GetLandData(regionHandle, x, y, out regionAccess);
114 if (land != null) 114 if (land != null)
115 return land; 115 return land;
116 116
117 return base.GetLandData(regionHandle, x, y); 117 return base.GetLandData(regionHandle, x, y, out regionAccess);
118 118
119 } 119 }
120 #endregion ILandService 120 #endregion ILandService
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index 4ccd0f0..31aa017 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -51,6 +51,7 @@ namespace OpenSim.Region.CoreModules.World.Land
51 public LandData LandData; 51 public LandData LandData;
52 public ulong RegionHandle; 52 public ulong RegionHandle;
53 public uint X, Y; 53 public uint X, Y;
54 public byte RegionAccess;
54 } 55 }
55 56
56 public class LandManagementModule : INonSharedRegionModule 57 public class LandManagementModule : INonSharedRegionModule
@@ -1459,13 +1460,15 @@ namespace OpenSim.Region.CoreModules.World.Land
1459 if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle) 1460 if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle)
1460 { 1461 {
1461 extLandData.LandData = this.GetLandObject(extLandData.X, extLandData.Y).LandData; 1462 extLandData.LandData = this.GetLandObject(extLandData.X, extLandData.Y).LandData;
1463 extLandData.RegionAccess = m_scene.RegionInfo.AccessLevel;
1462 } 1464 }
1463 else 1465 else
1464 { 1466 {
1465 ILandService landService = m_scene.RequestModuleInterface<ILandService>(); 1467 ILandService landService = m_scene.RequestModuleInterface<ILandService>();
1466 extLandData.LandData = landService.GetLandData(extLandData.RegionHandle, 1468 extLandData.LandData = landService.GetLandData(extLandData.RegionHandle,
1467 extLandData.X, 1469 extLandData.X,
1468 extLandData.Y); 1470 extLandData.Y,
1471 out extLandData.RegionAccess);
1469 if (extLandData.LandData == null) 1472 if (extLandData.LandData == null)
1470 { 1473 {
1471 // we didn't find the region/land => don't cache 1474 // we didn't find the region/land => don't cache
@@ -1497,6 +1500,7 @@ namespace OpenSim.Region.CoreModules.World.Land
1497 r.RegionName = info.RegionName; 1500 r.RegionName = info.RegionName;
1498 r.RegionLocX = (uint)info.RegionLocX; 1501 r.RegionLocX = (uint)info.RegionLocX;
1499 r.RegionLocY = (uint)info.RegionLocY; 1502 r.RegionLocY = (uint)info.RegionLocY;
1503 r.RegionSettings.Maturity = (int)Util.ConvertAccessLevelToMaturity(data.RegionAccess);
1500 remoteClient.SendParcelInfo(r, data.LandData, parcelID, data.X, data.Y); 1504 remoteClient.SendParcelInfo(r, data.LandData, parcelID, data.X, data.Y);
1501 } 1505 }
1502 else 1506 else