aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs1
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs9
2 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 4ac6743..9527fa5 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -761,6 +761,7 @@ namespace OpenSim.Region.Framework.Scenes
761 { 761 {
762 if (agent.ParentUUID != UUID.Zero) 762 if (agent.ParentUUID != UUID.Zero)
763 { 763 {
764 agent.ClearControls();
764 agent.ParentPart = null; 765 agent.ParentPart = null;
765// agent.ParentPosition = Vector3.Zero; 766// agent.ParentPosition = Vector3.Zero;
766// agent.ParentUUID = UUID.Zero; 767// agent.ParentUUID = UUID.Zero;
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 5c76964..ca63d04 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -4512,6 +4512,15 @@ namespace OpenSim.Region.Framework.Scenes
4512 ControllingClient.SendTakeControls(int.MaxValue, false, false); 4512 ControllingClient.SendTakeControls(int.MaxValue, false, false);
4513 } 4513 }
4514 4514
4515 public void ClearControls()
4516 {
4517 IgnoredControls = ScriptControlled.CONTROL_ZERO;
4518 lock (scriptedcontrols)
4519 {
4520 scriptedcontrols.Clear();
4521 }
4522 }
4523
4515 private void UnRegisterSeatControls(UUID obj) 4524 private void UnRegisterSeatControls(UUID obj)
4516 { 4525 {
4517 List<UUID> takers = new List<UUID>(); 4526 List<UUID> takers = new List<UUID>();