A bit more work on prim building related code. Think most of the building tools are now connected up and its now just a case of doing some bug fixing.

afrisby
MW 2007-08-21 16:32:31 +00:00
parent b7134c834c
commit 76379a415b
2 changed files with 7 additions and 8 deletions

View File

@ -541,7 +541,6 @@ namespace OpenSim.Region.Environment.Scenes
if (hasPrim != false) if (hasPrim != false)
{ {
((SceneObjectGroup)ent).UpdateGroupRotation(pos, rot); ((SceneObjectGroup)ent).UpdateGroupRotation(pos, rot);
// prim.UpdateGroupMouseRotation(pos, rot);
break; break;
} }
} }
@ -565,7 +564,6 @@ namespace OpenSim.Region.Environment.Scenes
if (hasPrim != false) if (hasPrim != false)
{ {
((SceneObjectGroup)ent).UpdateGroupRotation(rot); ((SceneObjectGroup)ent).UpdateGroupRotation(rot);
//prim.UpdateGroupRotation(rot);
break; break;
} }
} }
@ -580,16 +578,15 @@ namespace OpenSim.Region.Environment.Scenes
/// <param name="remoteClient"></param> /// <param name="remoteClient"></param>
public void UpdatePrimSingleRotation(uint localID, LLQuaternion rot, IClientAPI remoteClient) public void UpdatePrimSingleRotation(uint localID, LLQuaternion rot, IClientAPI remoteClient)
{ {
//Console.WriteLine("trying to update single prim rotation"); bool hasPrim = false;
Primitive prim = null;
foreach (EntityBase ent in Entities.Values) foreach (EntityBase ent in Entities.Values)
{ {
if (ent is SceneObjectGroup) if (ent is SceneObjectGroup)
{ {
// prim = ((SceneObject)ent).HasChildPrim(localID); hasPrim = ((SceneObjectGroup)ent).HasChildPrim(localID);
if (prim != null) if (hasPrim != false)
{ {
prim.UpdateSingleRotation(rot); ((SceneObjectGroup)ent).UpdateSingleRotation(rot, localID);
break; break;
} }
} }
@ -613,7 +610,6 @@ namespace OpenSim.Region.Environment.Scenes
if (hasPrim != false) if (hasPrim != false)
{ {
((SceneObjectGroup)ent).Resize(scale, localID); ((SceneObjectGroup)ent).Resize(scale, localID);
// prim.ResizeGoup(scale);
break; break;
} }
} }

View File

@ -755,6 +755,7 @@ namespace OpenSim.Region.Environment.Scenes
public void UpdateGroupRotation(LLQuaternion rot) public void UpdateGroupRotation(LLQuaternion rot)
{ {
this.m_rootPart.UpdateRotation(rot); this.m_rootPart.UpdateRotation(rot);
this.ScheduleGroupForTerseUpdate();
} }
/// <summary> /// <summary>
@ -766,6 +767,7 @@ namespace OpenSim.Region.Environment.Scenes
{ {
this.m_rootPart.UpdateRotation(rot); this.m_rootPart.UpdateRotation(rot);
this.AbsolutePosition = pos; this.AbsolutePosition = pos;
this.ScheduleGroupForTerseUpdate();
} }
/// <summary> /// <summary>
@ -813,6 +815,7 @@ namespace OpenSim.Region.Environment.Scenes
prim.RotationOffset = new LLQuaternion(newRot.w, newRot.x, newRot.y, newRot.z); prim.RotationOffset = new LLQuaternion(newRot.w, newRot.x, newRot.y, newRot.z);
} }
} }
this.m_rootPart.ScheduleTerseUpdate();
} }
#endregion #endregion
/// <summary> /// <summary>