clear script controls on crossing (untested)(possible should be done

elsewhere/othe way)
avinationmerge
UbitUmarov 2014-07-26 16:56:21 +01:00
parent b6af41ec11
commit 43cf184603
2 changed files with 10 additions and 0 deletions

View File

@ -761,6 +761,7 @@ namespace OpenSim.Region.Framework.Scenes
{ {
if (agent.ParentUUID != UUID.Zero) if (agent.ParentUUID != UUID.Zero)
{ {
agent.ClearControls();
agent.ParentPart = null; agent.ParentPart = null;
// agent.ParentPosition = Vector3.Zero; // agent.ParentPosition = Vector3.Zero;
// agent.ParentUUID = UUID.Zero; // agent.ParentUUID = UUID.Zero;

View File

@ -4512,6 +4512,15 @@ namespace OpenSim.Region.Framework.Scenes
ControllingClient.SendTakeControls(int.MaxValue, false, false); ControllingClient.SendTakeControls(int.MaxValue, false, false);
} }
public void ClearControls()
{
IgnoredControls = ScriptControlled.CONTROL_ZERO;
lock (scriptedcontrols)
{
scriptedcontrols.Clear();
}
}
private void UnRegisterSeatControls(UUID obj) private void UnRegisterSeatControls(UUID obj)
{ {
List<UUID> takers = new List<UUID>(); List<UUID> takers = new List<UUID>();