* Move code from that last commit to LLClientView since it's a linden client specific limitation, it moves to the Linden Specific client handler.
parent
af04cd1ae0
commit
d9a20edfb0
|
@ -5521,6 +5521,24 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
|
|
||||||
if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId)
|
if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId)
|
||||||
{
|
{
|
||||||
|
// Linden Client limitation..
|
||||||
|
if (avSetStartLocationRequestPacket.StartLocationData.LocationPos.X == 255.5f
|
||||||
|
|| avSetStartLocationRequestPacket.StartLocationData.LocationPos.Y == 255.5f)
|
||||||
|
{
|
||||||
|
ScenePresence avatar = null;
|
||||||
|
if (((Scene)m_scene).TryGetAvatar(AgentId, out avatar))
|
||||||
|
{
|
||||||
|
if (avSetStartLocationRequestPacket.StartLocationData.LocationPos.X == 255.5f)
|
||||||
|
{
|
||||||
|
avSetStartLocationRequestPacket.StartLocationData.LocationPos.X = avatar.AbsolutePosition.X;
|
||||||
|
}
|
||||||
|
if (avSetStartLocationRequestPacket.StartLocationData.LocationPos.Y == 255.5f)
|
||||||
|
{
|
||||||
|
avSetStartLocationRequestPacket.StartLocationData.LocationPos.Y = avatar.AbsolutePosition.Y;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
TeleportLocationRequest handlerSetStartLocationRequest = OnSetStartLocationRequest;
|
TeleportLocationRequest handlerSetStartLocationRequest = OnSetStartLocationRequest;
|
||||||
if (handlerSetStartLocationRequest != null)
|
if (handlerSetStartLocationRequest != null)
|
||||||
{
|
{
|
||||||
|
|
|
@ -3035,24 +3035,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
// TODO: The HomeRegion property can be removed then, too
|
// TODO: The HomeRegion property can be removed then, too
|
||||||
UserProfile.HomeRegion = RegionInfo.RegionHandle;
|
UserProfile.HomeRegion = RegionInfo.RegionHandle;
|
||||||
|
|
||||||
// Linden Client limitation..
|
|
||||||
if (position.X == 255.5f || position.Y == 255.5f)
|
|
||||||
{
|
|
||||||
ScenePresence avatar = null;
|
|
||||||
if (TryGetAvatar(remoteClient.AgentId, out avatar))
|
|
||||||
{
|
|
||||||
if (position.X == 255.5f)
|
|
||||||
{
|
|
||||||
position.X = avatar.AbsolutePosition.X;
|
|
||||||
}
|
|
||||||
if (position.Y == 255.5f)
|
|
||||||
{
|
|
||||||
position.Y = avatar.AbsolutePosition.Y;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
UserProfile.HomeLocation = position;
|
UserProfile.HomeLocation = position;
|
||||||
UserProfile.HomeLookAt = lookAt;
|
UserProfile.HomeLookAt = lookAt;
|
||||||
CommsManager.UserService.UpdateUserProfile(UserProfile);
|
CommsManager.UserService.UpdateUserProfile(UserProfile);
|
||||||
|
|
Loading…
Reference in New Issue