aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authordahlia2014-02-20 00:18:28 -0800
committerdahlia2014-02-20 00:18:28 -0800
commita2866b85f3674b0f63b962f46f23490cd198515e (patch)
treeeddfc1fa2dc4ee98ca968e9312faf87e0df77fdb /OpenSim/Region
parentadd EventManager event OnCrossAgentToNewRegion (diff)
downloadopensim-SC-a2866b85f3674b0f63b962f46f23490cd198515e.zip
opensim-SC-a2866b85f3674b0f63b962f46f23490cd198515e.tar.gz
opensim-SC-a2866b85f3674b0f63b962f46f23490cd198515e.tar.bz2
opensim-SC-a2866b85f3674b0f63b962f46f23490cd198515e.tar.xz
add newRegion parameter to CrossAgentToNewRegion event and trigger the event after crossing thread is invoked
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/EventManager.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs1
3 files changed, 5 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
index f1d69b0..c9adc37 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
@@ -1531,6 +1531,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
1531 CrossAgentToNewRegionDelegate d = CrossAgentToNewRegionAsync; 1531 CrossAgentToNewRegionDelegate d = CrossAgentToNewRegionAsync;
1532 d.BeginInvoke(agent, newpos, neighbourRegion, isFlying, version, CrossAgentToNewRegionCompleted, d); 1532 d.BeginInvoke(agent, newpos, neighbourRegion, isFlying, version, CrossAgentToNewRegionCompleted, d);
1533 1533
1534 Scene.EventManager.TriggerCrossAgentToNewRegion(agent, isFlying, neighbourRegion);
1535
1534 return true; 1536 return true;
1535 } 1537 }
1536 1538
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 1981a25..ba79964 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -430,7 +430,7 @@ namespace OpenSim.Region.Framework.Scenes
430 public delegate void IncomingInstantMessage(GridInstantMessage message); 430 public delegate void IncomingInstantMessage(GridInstantMessage message);
431 public event IncomingInstantMessage OnIncomingInstantMessage; 431 public event IncomingInstantMessage OnIncomingInstantMessage;
432 432
433 public delegate void CrossAgentToNewRegion(ScenePresence sp, bool isFlying); 433 public delegate void CrossAgentToNewRegion(ScenePresence sp, bool isFlying, GridRegion newRegion);
434 public event CrossAgentToNewRegion OnCrossAgentToNewRegion; 434 public event CrossAgentToNewRegion OnCrossAgentToNewRegion;
435 435
436 public event IncomingInstantMessage OnUnhandledInstantMessage; 436 public event IncomingInstantMessage OnUnhandledInstantMessage;
@@ -1963,7 +1963,7 @@ namespace OpenSim.Region.Framework.Scenes
1963 } 1963 }
1964 } 1964 }
1965 1965
1966 public void TriggerCrossAgentToNewRegion(ScenePresence agent, bool isFlying) 1966 public void TriggerCrossAgentToNewRegion(ScenePresence agent, bool isFlying, GridRegion newRegion)
1967 { 1967 {
1968 CrossAgentToNewRegion handlerCrossAgentToNewRegion = OnCrossAgentToNewRegion; 1968 CrossAgentToNewRegion handlerCrossAgentToNewRegion = OnCrossAgentToNewRegion;
1969 if (handlerCrossAgentToNewRegion != null) 1969 if (handlerCrossAgentToNewRegion != null)
@@ -1972,7 +1972,7 @@ namespace OpenSim.Region.Framework.Scenes
1972 { 1972 {
1973 try 1973 try
1974 { 1974 {
1975 d(agent, isFlying); 1975 d(agent, isFlying, newRegion);
1976 } 1976 }
1977 catch (Exception e) 1977 catch (Exception e)
1978 { 1978 {
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 06ddcbd..676c000 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -4358,7 +4358,6 @@ namespace OpenSim.Region.Framework.Scenes
4358 { 4358 {
4359 if (EntityTransferModule != null) 4359 if (EntityTransferModule != null)
4360 { 4360 {
4361 EventManager.TriggerCrossAgentToNewRegion(agent, isFlying);
4362 return EntityTransferModule.Cross(agent, isFlying); 4361 return EntityTransferModule.Cross(agent, isFlying);
4363 } 4362 }
4364 else 4363 else