diff options
author | UbitUmarov | 2014-07-22 15:13:37 +0100 |
---|---|---|
committer | UbitUmarov | 2014-07-22 15:13:37 +0100 |
commit | f9fdf26ec37f9f7e0478deb6d9bfe3a3efcbc39e (patch) | |
tree | 1844bc1ba467e5c3cff7739e95fb8f0e41c91e27 /OpenSim/Region | |
parent | tell scripts about positions changes after they are actually changed (diff) | |
download | opensim-SC_OLD-f9fdf26ec37f9f7e0478deb6d9bfe3a3efcbc39e.zip opensim-SC_OLD-f9fdf26ec37f9f7e0478deb6d9bfe3a3efcbc39e.tar.gz opensim-SC_OLD-f9fdf26ec37f9f7e0478deb6d9bfe3a3efcbc39e.tar.bz2 opensim-SC_OLD-f9fdf26ec37f9f7e0478deb6d9bfe3a3efcbc39e.tar.xz |
make ResetChildPrimPhysicsPositions only do what it is supposed to do and
not what AbsolutePosition does
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 48aacfe..c7f4684 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1840,11 +1840,21 @@ namespace OpenSim.Region.Framework.Scenes | |||
1840 | // Setting this SOG's absolute position also loops through and sets the positions | 1840 | // Setting this SOG's absolute position also loops through and sets the positions |
1841 | // of the SOP's in this SOG's linkset. This has the side affect of making sure | 1841 | // of the SOP's in this SOG's linkset. This has the side affect of making sure |
1842 | // the physics world matches the simulated world. | 1842 | // the physics world matches the simulated world. |
1843 | AbsolutePosition = AbsolutePosition; // could someone in the know please explain how this works? | 1843 | // AbsolutePosition = AbsolutePosition; // could someone in the know please explain how this works? |
1844 | 1844 | ||
1845 | // teravus: AbsolutePosition is NOT a normal property! | 1845 | // teravus: AbsolutePosition is NOT a normal property! |
1846 | // the code in the getter of AbsolutePosition is significantly different then the code in the setter! | 1846 | // the code in the getter of AbsolutePosition is significantly different then the code in the setter! |
1847 | // jhurliman: Then why is it a property instead of two methods? | 1847 | // jhurliman: Then why is it a property instead of two methods? |
1848 | |||
1849 | // do only what is supposed to do | ||
1850 | Vector3 groupPosition = m_rootPart.GroupPosition; | ||
1851 | SceneObjectPart[] parts = m_parts.GetArray(); | ||
1852 | |||
1853 | foreach (SceneObjectPart part in parts) | ||
1854 | { | ||
1855 | if (part != m_rootPart) | ||
1856 | part.GroupPosition = groupPosition; | ||
1857 | } | ||
1848 | } | 1858 | } |
1849 | 1859 | ||
1850 | public UUID GetPartsFullID(uint localID) | 1860 | public UUID GetPartsFullID(uint localID) |