diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 12 |
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 | ||