* Fix bug in r7162 where avatars could not move

* Was caused by the lack of a local id.  Local ids are now given from the same sequence as prims, rather than a separate one
* I don't believe this will cause any problems, but please revert to a separate sequence if it does
This commit is contained in:
Justin Clarke Casey
2008-11-07 22:49:36 +00:00
parent ba1d9ca26b
commit 4ace67a81d
4 changed files with 30 additions and 28 deletions

View File

@@ -567,7 +567,7 @@ namespace OpenSim.Region.Environment.Scenes
RegionHandle = m_scene.RegionInfo.RegionHandle;
m_rootPart.ParentID = 0;
m_rootPart.LocalId = m_scene.AllocateLocalPrimId();
m_rootPart.LocalId = m_scene.AllocateLocalId();
// No need to lock here since the object isn't yet in a scene
foreach (SceneObjectPart part in m_parts.Values)
@@ -575,7 +575,7 @@ namespace OpenSim.Region.Environment.Scenes
if (Object.ReferenceEquals(part, m_rootPart))
continue;
part.LocalId = m_scene.AllocateLocalPrimId();
part.LocalId = m_scene.AllocateLocalId();
part.ParentID = m_rootPart.LocalId;
//m_log.DebugFormat("[SCENE]: Given local id {0} to part {1}, linknum {2}, parent {3} {4}", part.LocalId, part.UUID, part.LinkNum, part.ParentID, part.ParentUUID);
}
@@ -1394,7 +1394,7 @@ namespace OpenSim.Region.Environment.Scenes
/// <param name="cGroupID"></param>
public void CopyRootPart(SceneObjectPart part, UUID cAgentID, UUID cGroupID, bool userExposed)
{
SceneObjectPart newPart = part.Copy(m_scene.AllocateLocalPrimId(), OwnerID, GroupID, m_parts.Count, userExposed);
SceneObjectPart newPart = part.Copy(m_scene.AllocateLocalId(), OwnerID, GroupID, m_parts.Count, userExposed);
newPart.SetParent(this);
lock (m_parts)
@@ -1514,7 +1514,7 @@ namespace OpenSim.Region.Environment.Scenes
/// <param name="cGroupID"></param>
public void CopyPart(SceneObjectPart part, UUID cAgentID, UUID cGroupID, bool userExposed)
{
SceneObjectPart newPart = part.Copy(m_scene.AllocateLocalPrimId(), OwnerID, GroupID, m_parts.Count, userExposed);
SceneObjectPart newPart = part.Copy(m_scene.AllocateLocalId(), OwnerID, GroupID, m_parts.Count, userExposed);
newPart.SetParent(this);
lock (m_parts)
@@ -2676,7 +2676,7 @@ namespace OpenSim.Region.Environment.Scenes
scriptPosTarget waypoint = new scriptPosTarget();
waypoint.targetPos = target;
waypoint.tolerance = tolerance;
uint handle = m_scene.AllocateLocalPrimId();
uint handle = m_scene.AllocateLocalId();
lock (m_targets)
{
m_targets.Add(handle, waypoint);