diff options
Diffstat (limited to 'OpenSim/Region/Environment/LandManagement/LandManager.cs')
-rw-r--r-- | OpenSim/Region/Environment/LandManagement/LandManager.cs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/LandManagement/LandManager.cs b/OpenSim/Region/Environment/LandManagement/LandManager.cs index f3ab502..59bf7f8 100644 --- a/OpenSim/Region/Environment/LandManagement/LandManager.cs +++ b/OpenSim/Region/Environment/LandManagement/LandManager.cs | |||
@@ -590,6 +590,22 @@ namespace OpenSim.Region.Environment.LandManagement | |||
590 | addLandObject(fullSimParcel); | 590 | addLandObject(fullSimParcel); |
591 | } | 591 | } |
592 | 592 | ||
593 | public void sendOutBannedNotices(IClientAPI avatar) | ||
594 | { | ||
595 | ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); | ||
596 | entry.AgentID = avatar.AgentId; | ||
597 | entry.Flags = ParcelManager.AccessList.Ban; | ||
598 | entry.Time = new DateTime(); | ||
599 | |||
600 | foreach (Land checkBan in landList.Values) | ||
601 | { | ||
602 | if (checkBan.isBannedFromLand(entry, avatar)) | ||
603 | { | ||
604 | checkBan.sendLandProperties(-30000, false, (int)ParcelManager.ParcelResult.Single, avatar); | ||
605 | } | ||
606 | } | ||
607 | } | ||
608 | |||
593 | public void sendLandUpdate(ScenePresence avatar) | 609 | public void sendLandUpdate(ScenePresence avatar) |
594 | { | 610 | { |
595 | Land over = getLandObject((int)Math.Min(255, Math.Max(0, Math.Round(avatar.AbsolutePosition.X))), | 611 | Land over = getLandObject((int)Math.Min(255, Math.Max(0, Math.Round(avatar.AbsolutePosition.X))), |
@@ -599,6 +615,7 @@ namespace OpenSim.Region.Environment.LandManagement | |||
599 | { | 615 | { |
600 | over.sendLandUpdateToClient(avatar.ControllingClient); | 616 | over.sendLandUpdateToClient(avatar.ControllingClient); |
601 | } | 617 | } |
618 | |||
602 | } | 619 | } |
603 | 620 | ||
604 | public void handleSignificantClientMovement(IClientAPI remote_client) | 621 | public void handleSignificantClientMovement(IClientAPI remote_client) |
@@ -608,6 +625,7 @@ namespace OpenSim.Region.Environment.LandManagement | |||
608 | if (clientAvatar != null) | 625 | if (clientAvatar != null) |
609 | { | 626 | { |
610 | sendLandUpdate(clientAvatar); | 627 | sendLandUpdate(clientAvatar); |
628 | sendOutBannedNotices(remote_client); | ||
611 | } | 629 | } |
612 | } | 630 | } |
613 | 631 | ||