SOG bug fix in UI object changes
parent
f0ba6c84e4
commit
816a44d6da
|
@ -3686,15 +3686,24 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
if (togroup)
|
if (togroup)
|
||||||
{
|
{
|
||||||
// related to group
|
// related to group
|
||||||
if ((change & ObjectChangeType.Position) != 0)
|
if ((change & (ObjectChangeType.Rotation | ObjectChangeType.Position)) != 0)
|
||||||
{
|
{
|
||||||
group.AbsolutePosition = data.position;
|
if ((change & ObjectChangeType.Rotation) != 0)
|
||||||
updateType = updatetype.groupterse;
|
{
|
||||||
}
|
group.RootPart.UpdateRotation(data.rotation);
|
||||||
if ((change & ObjectChangeType.Rotation) != 0)
|
updateType = updatetype.none;
|
||||||
{
|
}
|
||||||
group.RootPart.UpdateRotation(data.rotation);
|
if ((change & ObjectChangeType.Position) != 0)
|
||||||
updateType = updatetype.none;
|
{
|
||||||
|
group.AbsolutePosition = data.position;
|
||||||
|
updateType = updatetype.groupterse;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
// ugly rotation update of all parts
|
||||||
|
{
|
||||||
|
group.AbsolutePosition = AbsolutePosition;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
if ((change & ObjectChangeType.Scale) != 0)
|
if ((change & ObjectChangeType.Scale) != 0)
|
||||||
{
|
{
|
||||||
|
@ -3719,10 +3728,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
if (part == group.RootPart)
|
if (part == group.RootPart)
|
||||||
{
|
{
|
||||||
if ((change & ObjectChangeType.Position) != 0)
|
|
||||||
group.UpdateRootPosition(data.position);
|
|
||||||
if ((change & ObjectChangeType.Rotation) != 0)
|
if ((change & ObjectChangeType.Rotation) != 0)
|
||||||
group.UpdateRootRotation(data.rotation);
|
group.UpdateRootRotation(data.rotation);
|
||||||
|
if ((change & ObjectChangeType.Position) != 0)
|
||||||
|
group.UpdateRootPosition(data.position);
|
||||||
if ((change & ObjectChangeType.Scale) != 0)
|
if ((change & ObjectChangeType.Scale) != 0)
|
||||||
part.Resize(data.scale);
|
part.Resize(data.scale);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue