several changes to land handling. Landchannel.cs is just a wrrapper for landmanagementmodule, so let module be it and ignore all code on landchannel.cs, to remove one day; make parcel fakeID more a thing (it is our actual parcel ID. proper globalID cannot be sent to viewers, because HG, etc.

This commit is contained in:
UbitUmarov
2020-08-24 17:36:57 +01:00
parent e997392ab0
commit 0ee1e3b2d9
9 changed files with 233 additions and 221 deletions

View File

@@ -51,7 +51,6 @@ namespace OpenSim.Framework
public virtual AuthenticateResponse AuthenticateSession(UUID sessionID, UUID agentID, uint circuitcode)
{
AuthenticateResponse user = new AuthenticateResponse();
if (!m_agentCircuits.TryGetValue(circuitcode, out AgentCircuitData validcircuit) || validcircuit == null)
{

View File

@@ -316,7 +316,6 @@ namespace OpenSim.Framework
bool removeContribution, int parcelLocalID, int parcelArea, int parcelPrice,
bool authenticated);
// We keep all this information for fraud purposes in the future.
public delegate void MoneyBalanceRequest(IClientAPI remoteClient, UUID agentID, UUID sessionID, UUID TransactionID);
public delegate void ObjectPermissions(
@@ -356,8 +355,7 @@ namespace OpenSim.Framework
public delegate void SetEstateTerrainDetailTexture(IClientAPI remoteClient, int corner, UUID side);
public delegate void SetEstateTerrainTextureHeights(IClientAPI remoteClient, int corner, float lowVal, float highVal
);
public delegate void SetEstateTerrainTextureHeights(IClientAPI remoteClient, int corner, float lowVal, float highVal);
public delegate void CommitEstateTerrainTextureRequest(IClientAPI remoteClient);
@@ -586,7 +584,7 @@ namespace OpenSim.Framework
public class EntityUpdate
{
private ISceneEntity m_entity;
private readonly ISceneEntity m_entity;
private PrimUpdateFlags m_flags;
public ISceneEntity Entity

View File

@@ -44,6 +44,12 @@ namespace OpenSim.Framework
bool[,] LandBitmap { get; set; }
UUID RegionUUID { get; }
UUID GlobalID { get; }
UUID FakeID { get; }
int LocalID { get; }
UUID OwnerID { get; }
UUID GroupID { get; }
/// <summary>
/// Prim counts for this land object.
/// </summary>
@@ -100,7 +106,8 @@ namespace OpenSim.Framework
bool[,] BasicFullRegionLandBitmap();
/// <summary>
/// Create a square land bitmap.
/// Create a land bitmap.
/// Square name is wrong kept bc legacy
/// </summary>
/// <remarks>
/// Land co-ordinates are zero indexed. The inputs are treated as points. So if you want to create a bitmap
@@ -117,6 +124,7 @@ namespace OpenSim.Framework
/// <param name="end_y"></param>
/// <param name="set_value"></param>
/// <returns>The bitmap created.</returns>
bool[,] GetSquareLandBitmap(int start_x, int start_y, int end_x, int end_y, bool set_value = true);
bool[,] ModifyLandBitmapSquare(bool[,] land_bitmap, int start_x, int start_y, int end_x, int end_y, bool set_value);
@@ -143,7 +151,7 @@ namespace OpenSim.Framework
/// <param name="AABBMin">out: parcel.AABBMin &lt;x,y,0&gt</param>
/// <param name="AABBMax">out: parcel.AABBMax &lt;x,y,0&gt</param>
/// <returns>New parcel bitmap</returns>
bool[,] RemapLandBitmap(bool[,] bitmap_base, Vector2 displacement, float rotationDegrees, Vector2 boundingOrigin, Vector2 boundingSize, Vector2 regionSize, out bool isEmptyNow, out Vector3 AABBMin, out Vector3 AABBMax);
bool[,] RemapLandBitmap(bool[,] bitmap_base, Vector2 displacement, float rotationDegrees, Vector2 boundingOrigin, Vector2 boundingSize, Vector2 regionSize, out bool isEmptyNow);
/// <summary>
/// Clears any parcel data in bitmap_base where there exists parcel data in bitmap_new. In other words the parcel data
@@ -155,7 +163,7 @@ namespace OpenSim.Framework
/// <param name="AABBMin">out: parcel.AABBMin &lt;x,y,0&gt;</param>
/// <param name="AABBMax">out: parcel.AABBMax &lt;x,y,0&gt</param>
/// <returns>New parcel bitmap</returns>
bool[,] RemoveFromLandBitmap(bool[,] bitmap_base, bool[,] bitmap_new, out bool isEmptyNow, out Vector3 AABBMin, out Vector3 AABBMax);
bool[,] RemoveFromLandBitmap(bool[,] bitmap_base, bool[,] bitmap_new, out bool isEmptyNow);
byte[] ConvertLandBitmapToBytes();
bool[,] ConvertBytesToLandBitmap(bool overrideRegionSize = false);

View File

@@ -46,11 +46,6 @@ namespace OpenSim.Framework
/// </summary>
public class LandData
{
// use only one serializer to give the runtime a chance to
// optimize it (it won't do that if you use a new instance
// every time)
private static XmlSerializer serializer = new XmlSerializer(typeof(LandData));
private Vector3 _AABBMax = new Vector3();
private Vector3 _AABBMin = new Vector3();
private int _area = 0;
@@ -382,7 +377,7 @@ namespace OpenSim.Framework
}
/// <summary>
/// jp2 data for the image representative of the parcel in the parcel dialog
/// parcel shape in bits per ocupied location
/// </summary>
public byte[] Bitmap
{
@@ -837,22 +832,5 @@ namespace OpenSim.Framework
return landData;
}
// public void ToXml(XmlWriter xmlWriter)
// {
// serializer.Serialize(xmlWriter, this);
// }
/// <summary>
/// Restore a LandData object from the serialized xml representation.
/// </summary>
/// <param name="xmlReader"></param>
/// <returns></returns>
// public static LandData FromXml(XmlReader xmlReader)
// {
// LandData land = (LandData)serializer.Deserialize(xmlReader);
//
// return land;
// }
}
}