diff options
Diffstat (limited to 'OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs')
-rw-r--r-- | OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs b/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs index 62410e2..a0d6197 100644 --- a/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs +++ b/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs | |||
@@ -29,6 +29,8 @@ using System; | |||
29 | using OpenMetaverse; | 29 | using OpenMetaverse; |
30 | using OpenSim.Framework; | 30 | using OpenSim.Framework; |
31 | using OpenSim.Region.CoreModules.Avatar.Attachments; | 31 | using OpenSim.Region.CoreModules.Avatar.Attachments; |
32 | using OpenSim.Region.CoreModules.Avatar.Gods; | ||
33 | using OpenSim.Region.Framework.Interfaces; | ||
32 | using OpenSim.Region.Framework.Scenes; | 34 | using OpenSim.Region.Framework.Scenes; |
33 | 35 | ||
34 | namespace OpenSim.Region.RegionCombinerModule | 36 | namespace OpenSim.Region.RegionCombinerModule |
@@ -47,22 +49,31 @@ namespace OpenSim.Region.RegionCombinerModule | |||
47 | public void ClientConnect(IClientAPI client) | 49 | public void ClientConnect(IClientAPI client) |
48 | { | 50 | { |
49 | m_virtScene.UnSubscribeToClientPrimEvents(client); | 51 | m_virtScene.UnSubscribeToClientPrimEvents(client); |
50 | m_virtScene.UnSubscribeToClientPrimRezEvents(client); | 52 | m_virtScene.UnSubscribeToClientPrimRezEvents(client); |
51 | m_virtScene.UnSubscribeToClientInventoryEvents(client); | 53 | m_virtScene.UnSubscribeToClientInventoryEvents(client); |
52 | ((AttachmentsModule)m_virtScene.AttachmentsModule).UnsubscribeFromClientEvents(client); | 54 | ((AttachmentsModule)m_virtScene.AttachmentsModule).UnsubscribeFromClientEvents(client); |
53 | //m_virtScene.UnSubscribeToClientTeleportEvents(client); | 55 | //m_virtScene.UnSubscribeToClientTeleportEvents(client); |
54 | m_virtScene.UnSubscribeToClientScriptEvents(client); | 56 | m_virtScene.UnSubscribeToClientScriptEvents(client); |
55 | m_virtScene.UnSubscribeToClientGodEvents(client); | 57 | |
58 | IGodsModule virtGodsModule = m_virtScene.RequestModuleInterface<IGodsModule>(); | ||
59 | if (virtGodsModule != null) | ||
60 | ((GodsModule)virtGodsModule).UnsubscribeFromClientEvents(client); | ||
61 | |||
56 | m_virtScene.UnSubscribeToClientNetworkEvents(client); | 62 | m_virtScene.UnSubscribeToClientNetworkEvents(client); |
57 | 63 | ||
58 | m_rootScene.SubscribeToClientPrimEvents(client); | 64 | m_rootScene.SubscribeToClientPrimEvents(client); |
59 | client.OnAddPrim += LocalAddNewPrim; | 65 | client.OnAddPrim += LocalAddNewPrim; |
60 | client.OnRezObject += LocalRezObject; | 66 | client.OnRezObject += LocalRezObject; |
67 | |||
61 | m_rootScene.SubscribeToClientInventoryEvents(client); | 68 | m_rootScene.SubscribeToClientInventoryEvents(client); |
62 | ((AttachmentsModule)m_rootScene.AttachmentsModule).SubscribeToClientEvents(client); | 69 | ((AttachmentsModule)m_rootScene.AttachmentsModule).SubscribeToClientEvents(client); |
63 | //m_rootScene.SubscribeToClientTeleportEvents(client); | 70 | //m_rootScene.SubscribeToClientTeleportEvents(client); |
64 | m_rootScene.SubscribeToClientScriptEvents(client); | 71 | m_rootScene.SubscribeToClientScriptEvents(client); |
65 | m_rootScene.SubscribeToClientGodEvents(client); | 72 | |
73 | IGodsModule rootGodsModule = m_virtScene.RequestModuleInterface<IGodsModule>(); | ||
74 | if (rootGodsModule != null) | ||
75 | ((GodsModule)rootGodsModule).UnsubscribeFromClientEvents(client); | ||
76 | |||
66 | m_rootScene.SubscribeToClientNetworkEvents(client); | 77 | m_rootScene.SubscribeToClientNetworkEvents(client); |
67 | } | 78 | } |
68 | 79 | ||