diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/ScenePresence.cs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 613ad52..8559caf 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -81,6 +81,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
81 | /// Position at which a significant movement was made | 81 | /// Position at which a significant movement was made |
82 | /// </summary> | 82 | /// </summary> |
83 | private LLVector3 posLastSignificantMove = new LLVector3(); | 83 | private LLVector3 posLastSignificantMove = new LLVector3(); |
84 | |||
85 | public delegate void SignificantClientMovement(IClientAPI remote_client); | ||
86 | public event SignificantClientMovement OnSignificantClientMovement; | ||
87 | |||
84 | #region Properties | 88 | #region Properties |
85 | /// <summary> | 89 | /// <summary> |
86 | /// | 90 | /// |
@@ -147,7 +151,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
147 | // ControllingClient.OnStartAnim += new StartAnim(this.SendAnimPack); | 151 | // ControllingClient.OnStartAnim += new StartAnim(this.SendAnimPack); |
148 | // ControllingClient.OnChildAgentStatus += new StatusChange(this.ChildStatusChange); | 152 | // ControllingClient.OnChildAgentStatus += new StatusChange(this.ChildStatusChange); |
149 | //ControllingClient.OnStopMovement += new GenericCall2(this.StopMovement); | 153 | //ControllingClient.OnStopMovement += new GenericCall2(this.StopMovement); |
150 | 154 | OnSignificantClientMovement += new SignificantClientMovement(m_world.parcelManager.handleSignificantClientMovement); | |
151 | Dir_Vectors[0] = new Vector3(1, 0, 0); //FOWARD | 155 | Dir_Vectors[0] = new Vector3(1, 0, 0); //FOWARD |
152 | Dir_Vectors[1] = new Vector3(-1, 0, 0); //BACK | 156 | Dir_Vectors[1] = new Vector3(-1, 0, 0); //BACK |
153 | Dir_Vectors[2] = new Vector3(0, 1, 0); //LEFT | 157 | Dir_Vectors[2] = new Vector3(0, 1, 0); //LEFT |
@@ -479,7 +483,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
479 | if (libsecondlife.Helpers.VecDist(this.Pos, this.posLastSignificantMove) > 2.0) | 483 | if (libsecondlife.Helpers.VecDist(this.Pos, this.posLastSignificantMove) > 2.0) |
480 | { | 484 | { |
481 | this.posLastSignificantMove = this.Pos; | 485 | this.posLastSignificantMove = this.Pos; |
482 | this.ControllingClient.TriggerSignificantClientMovement(this.ControllingClient); | 486 | if (OnSignificantClientMovement != null) |
487 | { | ||
488 | OnSignificantClientMovement(this.ControllingClient); | ||
489 | } | ||
483 | } | 490 | } |
484 | } | 491 | } |
485 | #endregion | 492 | #endregion |