aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorUbitUmarov2014-08-21 23:18:51 +0100
committerUbitUmarov2014-08-21 23:18:51 +0100
commitd5bb80798d106f0460ea57b0a0cf22e1829cd96d (patch)
tree207a113b16bf5b63f5eb44802a275d3387b4b818 /OpenSim
parent replace AgentHasMovedAway + KillEntity by a hacked version on teleports (diff)
downloadopensim-SC-d5bb80798d106f0460ea57b0a0cf22e1829cd96d.zip
opensim-SC-d5bb80798d106f0460ea57b0a0cf22e1829cd96d.tar.gz
opensim-SC-d5bb80798d106f0460ea57b0a0cf22e1829cd96d.tar.bz2
opensim-SC-d5bb80798d106f0460ea57b0a0cf22e1829cd96d.tar.xz
make the hack more extensive. Forbid sog/sop updates if Intransit but
release it sooner
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs21
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index f9266b4..fd1ec82 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -3515,10 +3515,10 @@ namespace OpenSim.Region.Framework.Scenes
3515 3515
3516 SendAppearanceToAgent(this); 3516 SendAppearanceToAgent(this);
3517 3517
3518// if (cachedappearance) 3518 m_inTransit = false;
3519// { 3519
3520 SendAppearanceToAllOtherAgents(); 3520 SendAppearanceToAllOtherAgents();
3521// } 3521
3522 if(Animator!= null) 3522 if(Animator!= null)
3523 Animator.SendAnimPack(); 3523 Animator.SendAnimPack();
3524 } 3524 }
@@ -4668,7 +4668,7 @@ namespace OpenSim.Region.Framework.Scenes
4668 4668
4669 public void SendAttachmentScheduleUpdate(SceneObjectGroup sog) 4669 public void SendAttachmentScheduleUpdate(SceneObjectGroup sog)
4670 { 4670 {
4671 if (IsChildAgent) 4671 if (IsChildAgent || IsInTransit)
4672 return; 4672 return;
4673 4673
4674 SceneObjectPart[] origparts = sog.Parts; 4674 SceneObjectPart[] origparts = sog.Parts;
@@ -4746,7 +4746,7 @@ namespace OpenSim.Region.Framework.Scenes
4746 4746
4747 public void SendAttachmentUpdate(SceneObjectGroup sog, UpdateRequired UpdateFlag) 4747 public void SendAttachmentUpdate(SceneObjectGroup sog, UpdateRequired UpdateFlag)
4748 { 4748 {
4749 if (IsChildAgent) 4749 if (IsChildAgent || IsInTransit)
4750 return; 4750 return;
4751 4751
4752 PrimUpdateFlags flag; 4752 PrimUpdateFlags flag;
@@ -4796,7 +4796,7 @@ namespace OpenSim.Region.Framework.Scenes
4796 4796
4797 public void SendAttachmentScheduleUpdate(SceneObjectPart part) 4797 public void SendAttachmentScheduleUpdate(SceneObjectPart part)
4798 { 4798 {
4799 if (IsChildAgent) 4799 if (IsChildAgent || IsInTransit)
4800 return; 4800 return;
4801 4801
4802 4802
@@ -4836,7 +4836,7 @@ namespace OpenSim.Region.Framework.Scenes
4836 4836
4837 public void SendAttachmentUpdate(SceneObjectPart part, UpdateRequired UpdateFlag) 4837 public void SendAttachmentUpdate(SceneObjectPart part, UpdateRequired UpdateFlag)
4838 { 4838 {
4839 if (IsChildAgent) 4839 if (IsChildAgent || IsInTransit)
4840 return; 4840 return;
4841 4841
4842 PrimUpdateFlags flag; 4842 PrimUpdateFlags flag;
@@ -5850,7 +5850,12 @@ namespace OpenSim.Region.Framework.Scenes
5850 { 5850 {
5851 List<ScenePresence> allpresences = m_scene.GetScenePresences(); 5851 List<ScenePresence> allpresences = m_scene.GetScenePresences();
5852 foreach (ScenePresence p in allpresences) 5852 foreach (ScenePresence p in allpresences)
5853 SendKillTo(p); 5853 {
5854 if (p == this)
5855 continue;
5856 SendKillTo(p);
5857 p.SendKillTo(this);
5858 }
5854 if (Scene.AttachmentsModule != null) 5859 if (Scene.AttachmentsModule != null)
5855 Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true); 5860 Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true);
5856 } 5861 }