diff options
author | UbitUmarov | 2012-02-11 17:48:49 +0000 |
---|---|---|
committer | UbitUmarov | 2012-02-11 17:48:49 +0000 |
commit | 09f6647aa37be99191263a20a98a5b992f62a3de (patch) | |
tree | d707ce79bd4ce474def7f92d048421c610913470 /OpenSim | |
parent | UbitODE: replace 'taints' by 'changes' for avatars also. This provides better... (diff) | |
download | opensim-SC_OLD-09f6647aa37be99191263a20a98a5b992f62a3de.zip opensim-SC_OLD-09f6647aa37be99191263a20a98a5b992f62a3de.tar.gz opensim-SC_OLD-09f6647aa37be99191263a20a98a5b992f62a3de.tar.bz2 opensim-SC_OLD-09f6647aa37be99191263a20a98a5b992f62a3de.tar.xz |
scenepresence change! in standup() give avatar a physical actor after deciding the new position. This reduces a bit the odds of it being still coliding with object.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index c7c90da..9100c29 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1814,8 +1814,11 @@ namespace OpenSim.Region.Framework.Scenes | |||
1814 | // m_log.DebugFormat("[SCENE PRESENCE]: StandUp() for {0}", Name); | 1814 | // m_log.DebugFormat("[SCENE PRESENCE]: StandUp() for {0}", Name); |
1815 | 1815 | ||
1816 | SitGround = false; | 1816 | SitGround = false; |
1817 | |||
1818 | /* move this down so avatar gets physical in the new position and not where it is siting | ||
1817 | if (PhysicsActor == null) | 1819 | if (PhysicsActor == null) |
1818 | AddToPhysicalScene(false); | 1820 | AddToPhysicalScene(false); |
1821 | */ | ||
1819 | 1822 | ||
1820 | if (ParentID != 0) | 1823 | if (ParentID != 0) |
1821 | { | 1824 | { |
@@ -1850,6 +1853,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
1850 | ParentPosition = Vector3.Zero; | 1853 | ParentPosition = Vector3.Zero; |
1851 | 1854 | ||
1852 | ParentID = 0; | 1855 | ParentID = 0; |
1856 | |||
1857 | if (PhysicsActor == null) | ||
1858 | AddToPhysicalScene(false); | ||
1859 | |||
1853 | SendAvatarDataToAllAgents(); | 1860 | SendAvatarDataToAllAgents(); |
1854 | m_requestedSitTargetID = 0; | 1861 | m_requestedSitTargetID = 0; |
1855 | 1862 | ||
@@ -1857,6 +1864,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
1857 | part.ParentGroup.TriggerScriptChangedEvent(Changed.LINK); | 1864 | part.ParentGroup.TriggerScriptChangedEvent(Changed.LINK); |
1858 | } | 1865 | } |
1859 | 1866 | ||
1867 | else if (PhysicsActor == null) | ||
1868 | AddToPhysicalScene(false); | ||
1869 | |||
1860 | Animator.TrySetMovementAnimation("STAND"); | 1870 | Animator.TrySetMovementAnimation("STAND"); |
1861 | } | 1871 | } |
1862 | 1872 | ||