aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/ScenePresence.cs
diff options
context:
space:
mode:
authorMelanie2012-05-09 00:43:33 +0100
committerMelanie2012-05-09 00:43:33 +0100
commit50321fb7bf6472c4edfe574a2ba0113c0d4cd3be (patch)
treeb93dce1de50843d68b1daffbe3afc3903beee2fb /OpenSim/Region/Framework/Scenes/ScenePresence.cs
parentMerge branch 'master' into careminster (diff)
parentRemove physics actor related race conditions in SetVehicleFlags() and SetPhys... (diff)
downloadopensim-SC_OLD-50321fb7bf6472c4edfe574a2ba0113c0d4cd3be.zip
opensim-SC_OLD-50321fb7bf6472c4edfe574a2ba0113c0d4cd3be.tar.gz
opensim-SC_OLD-50321fb7bf6472c4edfe574a2ba0113c0d4cd3be.tar.bz2
opensim-SC_OLD-50321fb7bf6472c4edfe574a2ba0113c0d4cd3be.tar.xz
Merge branch 'master' into careminster
Conflicts: OpenSim/Region/Framework/Scenes/SceneGraph.cs OpenSim/Region/Framework/Scenes/SceneObjectPart.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 5a6fb6c..99ad685 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -77,6 +77,11 @@ namespace OpenSim.Region.Framework.Scenes
77// { 77// {
78// m_log.Debug("[SCENE PRESENCE] Destructor called"); 78// m_log.Debug("[SCENE PRESENCE] Destructor called");
79// } 79// }
80 private void TriggerScenePresenceUpdated()
81 {
82 if (m_scene != null)
83 m_scene.EventManager.TriggerScenePresenceUpdated(this);
84 }
80 85
81 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 86 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
82 87
@@ -498,6 +503,7 @@ namespace OpenSim.Region.Framework.Scenes
498 //m_log.DebugFormat( 503 //m_log.DebugFormat(
499 // "[ENTITY BASE]: In {0} set AbsolutePosition of {1} to {2}", 504 // "[ENTITY BASE]: In {0} set AbsolutePosition of {1} to {2}",
500 // Scene.RegionInfo.RegionName, Name, m_pos); 505 // Scene.RegionInfo.RegionName, Name, m_pos);
506 TriggerScenePresenceUpdated();
501 } 507 }
502 } 508 }
503 509
@@ -517,6 +523,7 @@ namespace OpenSim.Region.Framework.Scenes
517 return; 523 return;
518 524
519 m_pos = value; 525 m_pos = value;
526 TriggerScenePresenceUpdated();
520 } 527 }
521 } 528 }
522 529
@@ -1090,6 +1097,8 @@ namespace OpenSim.Region.Framework.Scenes
1090 1097
1091 public void TeleportWithMomentum(Vector3 pos, Vector3? v) 1098 public void TeleportWithMomentum(Vector3 pos, Vector3? v)
1092 { 1099 {
1100 if (ParentID != (uint)0)
1101 StandUp();
1093 bool isFlying = Flying; 1102 bool isFlying = Flying;
1094 Vector3 vel = Velocity; 1103 Vector3 vel = Velocity;
1095 RemoveFromPhysicalScene(); 1104 RemoveFromPhysicalScene();
@@ -1662,6 +1671,7 @@ namespace OpenSim.Region.Framework.Scenes
1662 } 1671 }
1663 1672
1664 m_scene.EventManager.TriggerOnClientMovement(this); 1673 m_scene.EventManager.TriggerOnClientMovement(this);
1674 TriggerScenePresenceUpdated();
1665 } 1675 }
1666 1676
1667 /// <summary> 1677 /// <summary>
@@ -2594,6 +2604,7 @@ namespace OpenSim.Region.Framework.Scenes
2594 2604
2595 m_scene.ForEachClient(SendTerseUpdateToClient); 2605 m_scene.ForEachClient(SendTerseUpdateToClient);
2596 } 2606 }
2607 TriggerScenePresenceUpdated();
2597 } 2608 }
2598 2609
2599 public void SendCoarseLocations(List<Vector3> coarseLocations, List<UUID> avatarUUIDs) 2610 public void SendCoarseLocations(List<Vector3> coarseLocations, List<UUID> avatarUUIDs)
@@ -3379,6 +3390,7 @@ namespace OpenSim.Region.Framework.Scenes
3379 Velocity = force; 3390 Velocity = force;
3380 3391
3381 m_forceToApply = null; 3392 m_forceToApply = null;
3393 TriggerScenePresenceUpdated();
3382 } 3394 }
3383 } 3395 }
3384 3396