diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 30 |
1 files changed, 7 insertions, 23 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 6807e1b..25489d8 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -204,22 +204,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
204 | get { return m_parts.Count; } | 204 | get { return m_parts.Count; } |
205 | } | 205 | } |
206 | 206 | ||
207 | public override Quaternion Rotation | 207 | public Quaternion GroupRotation |
208 | { | 208 | { |
209 | get { return m_rootPart.RotationOffset; } | 209 | get { return m_rootPart.RotationOffset; } |
210 | set { m_rootPart.RotationOffset = value; } | ||
211 | } | ||
212 | |||
213 | public override Vector3 Scale | ||
214 | { | ||
215 | get { return m_rootPart.Scale; } | ||
216 | set { m_rootPart.Scale = value; } | ||
217 | } | ||
218 | |||
219 | public override Vector3 Velocity | ||
220 | { | ||
221 | get { return m_rootPart.Velocity; } | ||
222 | set { m_rootPart.Velocity = value; } | ||
223 | } | 210 | } |
224 | 211 | ||
225 | public UUID GroupID | 212 | public UUID GroupID |
@@ -541,7 +528,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
541 | // Temporary commented to stop compiler warning | 528 | // Temporary commented to stop compiler warning |
542 | //Vector3 partPosition = | 529 | //Vector3 partPosition = |
543 | // new Vector3(part.AbsolutePosition.X, part.AbsolutePosition.Y, part.AbsolutePosition.Z); | 530 | // new Vector3(part.AbsolutePosition.X, part.AbsolutePosition.Y, part.AbsolutePosition.Z); |
544 | Quaternion parentrotation = Rotation; | 531 | Quaternion parentrotation = GroupRotation; |
545 | 532 | ||
546 | // Telling the prim to raytrace. | 533 | // Telling the prim to raytrace. |
547 | //EntityIntersection inter = part.TestIntersection(hRay, parentrotation); | 534 | //EntityIntersection inter = part.TestIntersection(hRay, parentrotation); |
@@ -1884,17 +1871,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
1884 | 1871 | ||
1885 | checkAtTargets(); | 1872 | checkAtTargets(); |
1886 | 1873 | ||
1887 | Quaternion rot = Rotation; | 1874 | if (UsePhysics && ((Math.Abs(lastPhysGroupRot.W - GroupRotation.W) > 0.1) |
1888 | 1875 | || (Math.Abs(lastPhysGroupRot.X - GroupRotation.X) > 0.1) | |
1889 | if (UsePhysics && | 1876 | || (Math.Abs(lastPhysGroupRot.Y - GroupRotation.Y) > 0.1) |
1890 | ((Math.Abs(lastPhysGroupRot.W - rot.W) > 0.1f) | 1877 | || (Math.Abs(lastPhysGroupRot.Z - GroupRotation.Z) > 0.1))) |
1891 | || (Math.Abs(lastPhysGroupRot.X - rot.X) > 0.1f) | ||
1892 | || (Math.Abs(lastPhysGroupRot.Y - rot.Y) > 0.1f) | ||
1893 | || (Math.Abs(lastPhysGroupRot.Z - rot.Z) > 0.1f))) | ||
1894 | { | 1878 | { |
1895 | m_rootPart.UpdateFlag = 1; | 1879 | m_rootPart.UpdateFlag = 1; |
1896 | 1880 | ||
1897 | lastPhysGroupRot = rot; | 1881 | lastPhysGroupRot = GroupRotation; |
1898 | } | 1882 | } |
1899 | 1883 | ||
1900 | foreach (SceneObjectPart part in m_parts.Values) | 1884 | foreach (SceneObjectPart part in m_parts.Values) |