diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Environment/LandManagement/Land.cs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/LandManagement/Land.cs b/OpenSim/Region/Environment/LandManagement/Land.cs index da17a69..11ff0ee 100644 --- a/OpenSim/Region/Environment/LandManagement/Land.cs +++ b/OpenSim/Region/Environment/LandManagement/Land.cs | |||
@@ -227,6 +227,19 @@ namespace OpenSim.Region.Environment.LandManagement | |||
227 | } | 227 | } |
228 | } | 228 | } |
229 | 229 | ||
230 | public bool isEitherBannedOrRestricted(LLUUID avatar) | ||
231 | { | ||
232 | if (isBannedFromLand(avatar)) | ||
233 | { | ||
234 | return true; | ||
235 | } | ||
236 | else if (isRestrictedFromLand(avatar)) | ||
237 | { | ||
238 | return true; | ||
239 | } | ||
240 | return false; | ||
241 | } | ||
242 | |||
230 | public bool isBannedFromLand(LLUUID avatar) | 243 | public bool isBannedFromLand(LLUUID avatar) |
231 | { | 244 | { |
232 | if ((this.landData.landFlags & (uint)Parcel.ParcelFlags.UseBanList) > 0) | 245 | if ((this.landData.landFlags & (uint)Parcel.ParcelFlags.UseBanList) > 0) |
@@ -274,9 +287,12 @@ namespace OpenSim.Region.Environment.LandManagement | |||
274 | Land over = | 287 | Land over = |
275 | m_scene.LandManager.getLandObject((int) Math.Round(avatars[i].AbsolutePosition.X), | 288 | m_scene.LandManager.getLandObject((int) Math.Round(avatars[i].AbsolutePosition.X), |
276 | (int) Math.Round(avatars[i].AbsolutePosition.Y)); | 289 | (int) Math.Round(avatars[i].AbsolutePosition.Y)); |
277 | if (over.landData.localID == landData.localID) | 290 | if (over != null) |
278 | { | 291 | { |
279 | sendLandUpdateToClient(avatars[i].ControllingClient); | 292 | if (over.landData.localID == landData.localID) |
293 | { | ||
294 | sendLandUpdateToClient(avatars[i].ControllingClient); | ||
295 | } | ||
280 | } | 296 | } |
281 | } | 297 | } |
282 | } | 298 | } |