diff options
author | UbitUmarov | 2017-08-24 01:30:57 +0100 |
---|---|---|
committer | UbitUmarov | 2017-08-24 01:30:57 +0100 |
commit | 74524cb3be8ffcc4a0debf2091ab71517a7a4791 (patch) | |
tree | 84e1fa2d5fab95cc6c9a2017cdb0da4e779efb58 /OpenSim | |
parent | mantis 8233: media changes flag object updated in region db (diff) | |
download | opensim-SC-74524cb3be8ffcc4a0debf2091ab71517a7a4791.zip opensim-SC-74524cb3be8ffcc4a0debf2091ab71517a7a4791.tar.gz opensim-SC-74524cb3be8ffcc4a0debf2091ab71517a7a4791.tar.bz2 opensim-SC-74524cb3be8ffcc4a0debf2091ab71517a7a4791.tar.xz |
(un)eject flag is only lowest bit, only protect active gods from freeze; do not check landing point (telehubs) on eject.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index f422708..95b1af9 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | |||
@@ -2204,12 +2204,12 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
2204 | ((Scene)client.Scene).TryGetScenePresence(client.AgentId, out parcelManager); | 2204 | ((Scene)client.Scene).TryGetScenePresence(client.AgentId, out parcelManager); |
2205 | System.Threading.Timer Timer; | 2205 | System.Threading.Timer Timer; |
2206 | 2206 | ||
2207 | if (targetAvatar.GodController.UserLevel == 0) | 2207 | if (targetAvatar.GodController.UserLevel < 200) |
2208 | { | 2208 | { |
2209 | ILandObject land = ((Scene)client.Scene).LandChannel.GetLandObject(targetAvatar.AbsolutePosition.X, targetAvatar.AbsolutePosition.Y); | 2209 | ILandObject land = ((Scene)client.Scene).LandChannel.GetLandObject(targetAvatar.AbsolutePosition.X, targetAvatar.AbsolutePosition.Y); |
2210 | if (!((Scene)client.Scene).Permissions.CanEditParcelProperties(client.AgentId, land, GroupPowers.LandEjectAndFreeze, true)) | 2210 | if (!((Scene)client.Scene).Permissions.CanEditParcelProperties(client.AgentId, land, GroupPowers.LandEjectAndFreeze, true)) |
2211 | return; | 2211 | return; |
2212 | if (flags == 0) | 2212 | if ((flags & 1) == 0) // only lowest bit has meaning for now |
2213 | { | 2213 | { |
2214 | targetAvatar.AllowMovement = false; | 2214 | targetAvatar.AllowMovement = false; |
2215 | targetAvatar.ControllingClient.SendAlertMessage(parcelManager.Firstname + " " + parcelManager.Lastname + " has frozen you for 30 seconds. You cannot move or interact with the world."); | 2215 | targetAvatar.ControllingClient.SendAlertMessage(parcelManager.Firstname + " " + parcelManager.Lastname + " has frozen you for 30 seconds. You cannot move or interact with the world."); |
@@ -2261,7 +2261,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
2261 | 2261 | ||
2262 | Vector3 pos = m_scene.GetNearestAllowedPosition(targetAvatar, land); | 2262 | Vector3 pos = m_scene.GetNearestAllowedPosition(targetAvatar, land); |
2263 | 2263 | ||
2264 | targetAvatar.TeleportWithMomentum(pos, null); | 2264 | targetAvatar.TeleportOnEject(pos); |
2265 | targetAvatar.ControllingClient.SendAlertMessage("You have been ejected by " + parcelManager.Firstname + " " + parcelManager.Lastname); | 2265 | targetAvatar.ControllingClient.SendAlertMessage("You have been ejected by " + parcelManager.Firstname + " " + parcelManager.Lastname); |
2266 | parcelManager.ControllingClient.SendAlertMessage("Avatar Ejected."); | 2266 | parcelManager.ControllingClient.SendAlertMessage("Avatar Ejected."); |
2267 | 2267 | ||