* Update to send the parcel gathering error to a .Debug message.. so that a developer can see it in the environment, but it doesn't cause any adverse effects.

afrisby
Teravus Ovares 2007-12-21 03:16:42 +00:00
parent 37ea050886
commit 9f3170b49f
1 changed files with 34 additions and 28 deletions

View File

@ -457,38 +457,44 @@ namespace OpenSim.Region.Environment.LandManagement
//Now for border control //Now for border control
try
{
Land westParcel = getLandObject((x - 1) * 4, y * 4);
Land southParcel = getLandObject(x * 4, (y - 1) * 4);
if (x == 0)
{
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_WEST);
}
else if (westParcel != null && westParcel != currentParcelBlock)
{
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_WEST);
}
Land westParcel = getLandObject((x - 1) * 4, y * 4); if (y == 0)
Land southParcel = getLandObject(x * 4, (y - 1) * 4); {
if (x == 0) tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_SOUTH);
{ }
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_WEST); else if (southParcel != null && southParcel != currentParcelBlock)
} {
else if (westParcel != null && westParcel != currentParcelBlock) tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_SOUTH);
{ }
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_WEST);
}
if (y == 0) byteArray[byteArrayCount] = tempByte;
{ byteArrayCount++;
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_SOUTH); if (byteArrayCount >= LAND_BLOCKS_PER_PACKET)
{
byteArrayCount = 0;
packet = new ParcelOverlayPacket();
packet.ParcelData.Data = byteArray;
packet.ParcelData.SequenceID = sequenceID;
remote_client.OutPacket((Packet)packet, ThrottleOutPacketType.Task);
sequenceID++;
byteArray = new byte[LAND_BLOCKS_PER_PACKET];
}
} }
else if (southParcel != null && southParcel != currentParcelBlock) catch (System.Exception)
{ {
tempByte = Convert.ToByte(tempByte | LAND_FLAG_PROPERTY_BORDER_SOUTH); OpenSim.Framework.Console.MainLog.Instance.Debug("LAND", "Skipped Land checks because avatar is out of bounds");
}
byteArray[byteArrayCount] = tempByte;
byteArrayCount++;
if (byteArrayCount >= LAND_BLOCKS_PER_PACKET)
{
byteArrayCount = 0;
packet = new ParcelOverlayPacket();
packet.ParcelData.Data = byteArray;
packet.ParcelData.SequenceID = sequenceID;
remote_client.OutPacket((Packet)packet, ThrottleOutPacketType.Task);
sequenceID++;
byteArray = new byte[LAND_BLOCKS_PER_PACKET];
} }
} }
} }