diff options
author | Teravus Ovares | 2008-04-25 21:41:55 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-04-25 21:41:55 +0000 |
commit | a534257b0e0861bb7656389675044fa905a11bf4 (patch) | |
tree | c879b8b46c13bd5afffb660ca3154ed8a94d51ce /OpenSim/Region/Environment/PermissionManager.cs | |
parent | * Check in odds and ends which remain as an attempt to get the item propertie... (diff) | |
download | opensim-SC_OLD-a534257b0e0861bb7656389675044fa905a11bf4.zip opensim-SC_OLD-a534257b0e0861bb7656389675044fa905a11bf4.tar.gz opensim-SC_OLD-a534257b0e0861bb7656389675044fa905a11bf4.tar.bz2 opensim-SC_OLD-a534257b0e0861bb7656389675044fa905a11bf4.tar.xz |
* Fixes prim crossing. See bug 1050.
* Causes the internal handling of attachments to put the prim group conceptually at the position of the avatar instead of 0,0,0
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Environment/PermissionManager.cs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/PermissionManager.cs b/OpenSim/Region/Environment/PermissionManager.cs index 0343d21..5658be7 100644 --- a/OpenSim/Region/Environment/PermissionManager.cs +++ b/OpenSim/Region/Environment/PermissionManager.cs | |||
@@ -168,12 +168,25 @@ namespace OpenSim.Region.Environment | |||
168 | /// <returns>Has permission?</returns> | 168 | /// <returns>Has permission?</returns> |
169 | public virtual bool CanObjectEntry(LLUUID user, LLVector3 oldPos, LLVector3 newPos) | 169 | public virtual bool CanObjectEntry(LLUUID user, LLVector3 oldPos, LLVector3 newPos) |
170 | { | 170 | { |
171 | |||
172 | |||
173 | if ((newPos.X > 257f || newPos.X < -1f || newPos.Y > 257f || newPos.Y < -1f)) | ||
174 | { | ||
175 | return true; | ||
176 | } | ||
177 | |||
171 | ILandObject land1 = m_scene.LandChannel.getLandObject(oldPos.X, oldPos.Y); | 178 | ILandObject land1 = m_scene.LandChannel.getLandObject(oldPos.X, oldPos.Y); |
172 | ILandObject land2 = m_scene.LandChannel.getLandObject(newPos.X, newPos.Y); | 179 | ILandObject land2 = m_scene.LandChannel.getLandObject(newPos.X, newPos.Y); |
180 | |||
173 | if (land1 == null || land2 == null) | 181 | if (land1 == null || land2 == null) |
174 | { | 182 | { |
175 | return false; | 183 | return false; |
176 | } | 184 | } |
185 | if (land2 == null) | ||
186 | { | ||
187 | // need this for crossing borders | ||
188 | return true; | ||
189 | } | ||
177 | 190 | ||
178 | if (land1.landData.globalID == land2.landData.globalID) | 191 | if (land1.landData.globalID == land2.landData.globalID) |
179 | { | 192 | { |