Mono 2.0 fix - call ToArray() explicitly
parent
528fc5358d
commit
ddf67bf929
|
@ -405,7 +405,7 @@ namespace OpenSim
|
|||
}
|
||||
}
|
||||
|
||||
m_log.InfoFormat("[SCENE]: Secure permissions loading enabled, modules loaded: {0}", String.Join(" ", m_permsModules));
|
||||
m_log.InfoFormat("[SCENE]: Secure permissions loading enabled, modules loaded: {0}", String.Join(" ", m_permsModules.ToArray()));
|
||||
}
|
||||
|
||||
scene.SetModuleInterfaces();
|
||||
|
|
|
@ -3933,6 +3933,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
|||
part.Shape.ProfileHollow = 27500;
|
||||
}
|
||||
}
|
||||
else if (update.Entity is ScenePresence)
|
||||
{
|
||||
ScenePresence presence = (ScenePresence)update.Entity;
|
||||
|
||||
// If ParentUUID is not UUID.Zero and ParentID is 0, this
|
||||
// avatar is in the process of crossing regions while
|
||||
// sat on an object. In this state, we don't want any
|
||||
// updates because they will visually orbit the avatar.
|
||||
// Update will be forced once crossing is completed anyway.
|
||||
if (presence.ParentUUID != UUID.Zero && presence.ParentID == 0)
|
||||
continue;
|
||||
}
|
||||
|
||||
++updatesThisCall;
|
||||
|
||||
|
|
|
@ -591,6 +591,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
avinfo.ParentID = av.ParentID;
|
||||
avsToCross.Add(avinfo);
|
||||
|
||||
av.PrevSitOffset = av.OffsetPosition;
|
||||
av.ParentID = 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -242,7 +242,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
|
||||
private int m_movementAnimationUpdateCounter = 0;
|
||||
|
||||
private Vector3 m_prevSitOffset;
|
||||
public Vector3 PrevSitOffset { get; set; }
|
||||
|
||||
protected AvatarAppearance m_appearance;
|
||||
|
||||
|
@ -957,7 +957,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
// ParentPosition = part.GetWorldPosition();
|
||||
ParentID = part.LocalId;
|
||||
ParentPart = part;
|
||||
m_pos = m_prevSitOffset;
|
||||
m_pos = PrevSitOffset;
|
||||
// pos = ParentPosition;
|
||||
pos = part.GetWorldPosition();
|
||||
}
|
||||
|
@ -2261,6 +2261,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
|
||||
if (ParentID != 0)
|
||||
{
|
||||
PrevSitOffset = m_pos; // Save sit offset
|
||||
SceneObjectPart part = ParentPart;
|
||||
UnRegisterSeatControls(part.ParentGroup.UUID);
|
||||
|
||||
|
@ -3487,7 +3488,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
cAgent.Appearance = new AvatarAppearance(Appearance);
|
||||
|
||||
cAgent.ParentPart = ParentUUID;
|
||||
cAgent.SitOffset = m_pos;
|
||||
cAgent.SitOffset = PrevSitOffset;
|
||||
|
||||
lock (scriptedcontrols)
|
||||
{
|
||||
|
@ -3530,7 +3531,7 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
CameraLeftAxis = cAgent.LeftAxis;
|
||||
CameraUpAxis = cAgent.UpAxis;
|
||||
ParentUUID = cAgent.ParentPart;
|
||||
m_prevSitOffset = cAgent.SitOffset;
|
||||
PrevSitOffset = cAgent.SitOffset;
|
||||
|
||||
// When we get to the point of re-computing neighbors everytime this
|
||||
// changes, then start using the agent's drawdistance rather than the
|
||||
|
|
Loading…
Reference in New Issue