aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorUbitUmarov2014-10-26 20:43:35 +0000
committerUbitUmarov2014-10-26 20:43:35 +0000
commitf39962430cc61fe9897c951af72b8736e13a391f (patch)
treedafac10d461b945cd02b098df33ac133bf1b8d28 /OpenSim
parent do consider skirt baked texture on validation (diff)
downloadopensim-SC_OLD-f39962430cc61fe9897c951af72b8736e13a391f.zip
opensim-SC_OLD-f39962430cc61fe9897c951af72b8736e13a391f.tar.gz
opensim-SC_OLD-f39962430cc61fe9897c951af72b8736e13a391f.tar.bz2
opensim-SC_OLD-f39962430cc61fe9897c951af72b8736e13a391f.tar.xz
fix parcel proprieties update sending
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs11
1 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index bbb280b..9279066 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -1199,8 +1199,11 @@ namespace OpenSim.Region.CoreModules.World.Land
1199 if (land.UpdateLandProperties(args, remote_client, out snap_selection, out needOverlay)) 1199 if (land.UpdateLandProperties(args, remote_client, out snap_selection, out needOverlay))
1200 { 1200 {
1201 //the proprieties to who changed them 1201 //the proprieties to who changed them
1202 1202 ScenePresence av = m_scene.GetScenePresence(remote_client.AgentId);
1203 land.SendLandProperties(0, false, LandChannel.LAND_RESULT_SINGLE, remote_client); 1203 if(av.IsChildAgent || land != GetLandObject(av.AbsolutePosition.X, av.AbsolutePosition.Y))
1204 land.SendLandProperties(-10000, false, LandChannel.LAND_RESULT_SINGLE, remote_client);
1205 else
1206 land.SendLandProperties(0, false, LandChannel.LAND_RESULT_SINGLE, remote_client);
1204 1207
1205 UUID parcelID = land.LandData.GlobalID; 1208 UUID parcelID = land.LandData.GlobalID;
1206 m_scene.ForEachScenePresence(delegate(ScenePresence avatar) 1209 m_scene.ForEachScenePresence(delegate(ScenePresence avatar)
@@ -1218,7 +1221,7 @@ namespace OpenSim.Region.CoreModules.World.Land
1218 ILandObject aland = GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); 1221 ILandObject aland = GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y);
1219 if (aland != null) 1222 if (aland != null)
1220 { 1223 {
1221 if (client != remote_client || land != aland) 1224 if (client != remote_client && land == aland)
1222 aland.SendLandProperties(0, false, LandChannel.LAND_RESULT_SINGLE, client); 1225 aland.SendLandProperties(0, false, LandChannel.LAND_RESULT_SINGLE, client);
1223 } 1226 }
1224 if (avatar.currentParcelUUID == parcelID) 1227 if (avatar.currentParcelUUID == parcelID)
@@ -1848,7 +1851,7 @@ namespace OpenSim.Region.CoreModules.World.Land
1848 } 1851 }
1849 } 1852 }
1850 } 1853 }
1851 ); 1854 );
1852 } 1855 }
1853 if (flags == 4) //not target parcel, scripted object 1856 if (flags == 4) //not target parcel, scripted object
1854 { 1857 {