try to place avatars on a nicer location, when they arrive into a banned parcel

LSLKeyTest
UbitUmarov 2016-07-03 10:22:14 +01:00
parent a6ee06d630
commit a443dcce89
1 changed files with 9 additions and 4 deletions

View File

@ -4309,14 +4309,14 @@ namespace OpenSim.Region.Framework.Scenes
if (banned || restricted)
{
ILandObject nearestParcel = GetNearestAllowedParcel(agentID, posX, posY);
Vector2? newPosition = null;
if (nearestParcel != null)
{
//Move agent to nearest allowed
Vector2 newPosition = GetParcelSafeCorner(nearestParcel);
posX = newPosition.X;
posY = newPosition.Y;
// Vector2 newPosition = GetParcelSafeCorner(nearestParcel);
newPosition = nearestParcel.GetNearestPoint(new Vector3(posX, posY,0));
}
else
if(newPosition == null)
{
if (banned)
{
@ -4329,6 +4329,11 @@ namespace OpenSim.Region.Framework.Scenes
}
return false;
}
else
{
posX = newPosition.Value.X;
posY = newPosition.Value.Y;
}
}
reason = "";
return true;