fix remote requests for dwell, so dwell module still called

0.9.0-post-fixes
UbitUmarov 2017-05-14 04:17:48 +01:00
parent cb21caae77
commit 9ab8ce1404
6 changed files with 16 additions and 6 deletions

View File

@ -3111,10 +3111,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public void SendParcelInfo(RegionInfo info, LandData land, UUID parcelID, uint x, uint y)
{
float dwell = 0.0f;
IDwellModule dwellModule = m_scene.RequestModuleInterface<IDwellModule>();
if (dwellModule != null)
dwell = dwellModule.GetDwell(land);
ParcelInfoReplyPacket reply = (ParcelInfoReplyPacket)PacketPool.Instance.GetPacket(PacketType.ParcelInfoReply);
reply.AgentData.AgentID = m_agentId;
reply.Data.ParcelID = parcelID;
@ -3141,7 +3137,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
reply.Data.GlobalZ = pos.Z;
reply.Data.SimName = Utils.StringToBytes(info.RegionName);
reply.Data.SnapshotID = land.SnapshotID;
reply.Data.Dwell = dwell;
reply.Data.Dwell = land.Dwell;
reply.Data.SalePrice = land.SalePrice;
reply.Data.AuctionID = (int)land.AuctionID;

View File

@ -151,7 +151,11 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
x = rx - s.RegionInfo.WorldLocX;
y = ry - s.RegionInfo.WorldLocY;
regionAccess = s.RegionInfo.AccessLevel;
return s.GetLandData(x, y);
LandData land = s.GetLandData(x, y);
IDwellModule dwellModule = s.RequestModuleInterface<IDwellModule>();
if (dwellModule != null)
land.Dwell = dwellModule.GetDwell(land);
return land;
}
}
m_log.DebugFormat("[LAND IN CONNECTOR]: region handle {0} not found", regionHandle);

View File

@ -143,6 +143,10 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
{
LandData land = s.GetLandData(x, y);
regionAccess = s.RegionInfo.AccessLevel;
IDwellModule dwellModule = s.RequestModuleInterface<IDwellModule>();
if (dwellModule != null)
land.Dwell = dwellModule.GetDwell(land);
return land;
}
}

View File

@ -1948,6 +1948,9 @@ namespace OpenSim.Region.CoreModules.World.Land
if (data.RegionHandle == m_scene.RegionInfo.RegionHandle)
{
info = new GridRegion(m_scene.RegionInfo);
IDwellModule dwellModule = m_scene.RequestModuleInterface<IDwellModule>();
if (dwellModule != null)
data.LandData.Dwell = dwellModule.GetDwell(data.LandData);
}
else
{

View File

@ -85,6 +85,7 @@ namespace OpenSim.Server.Handlers.Land
hash["SnapshotID"] = landData.SnapshotID.ToString();
hash["UserLocation"] = landData.UserLocation.ToString();
hash["RegionAccess"] = regionAccess.ToString();
hash["Dwell"] = landData.Dwell.ToString();
}
XmlRpcResponse response = new XmlRpcResponse();

View File

@ -117,6 +117,8 @@ namespace OpenSim.Services.Connectors
landData.UserLocation = Vector3.Parse((string)hash["UserLocation"]);
if (hash["RegionAccess"] != null)
regionAccess = (byte)Convert.ToInt32((string)hash["RegionAccess"]);
if(hash["Dwell"] != null)
landData.Dwell = Convert.ToSingle((string)hash["Dwell"]);
m_log.DebugFormat("[LAND CONNECTOR]: Got land data for parcel {0}", landData.Name);
}
catch (Exception e)