diff options
author | dahlia | 2014-02-20 00:18:28 -0800 |
---|---|---|
committer | dahlia | 2014-02-20 00:18:28 -0800 |
commit | a2866b85f3674b0f63b962f46f23490cd198515e (patch) | |
tree | eddfc1fa2dc4ee98ca968e9312faf87e0df77fdb /OpenSim/Region | |
parent | add EventManager event OnCrossAgentToNewRegion (diff) | |
download | opensim-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.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/EventManager.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 1 |
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 |