diff options
author | UbitUmarov | 2016-06-28 23:52:00 +0100 |
---|---|---|
committer | UbitUmarov | 2016-06-28 23:52:00 +0100 |
commit | 84a6a6e008c64d8197177aff1b42a412e5623638 (patch) | |
tree | 5fea809f993fa8b4f822ca953e3fbc3e2c558e14 /OpenSim | |
parent | if a NPC is owned, allow access if ownerID matchs parcel owner or it is in t... (diff) | |
download | opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.zip opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.gz opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.bz2 opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.xz |
don't try to send initial AgentGroupDataUpdate to NPCs
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Addons/Groups/GroupsModule.cs | 13 | ||||
-rw-r--r-- | OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs | 13 |
2 files changed, 6 insertions, 20 deletions
diff --git a/OpenSim/Addons/Groups/GroupsModule.cs b/OpenSim/Addons/Groups/GroupsModule.cs index 3336e94..2d5ebea 100644 --- a/OpenSim/Addons/Groups/GroupsModule.cs +++ b/OpenSim/Addons/Groups/GroupsModule.cs | |||
@@ -249,7 +249,8 @@ namespace OpenSim.Groups | |||
249 | // There might be some problem with the thread we're generating this on but not | 249 | // There might be some problem with the thread we're generating this on but not |
250 | // doing the update at this time causes problems (Mantis #7920 and #7915) | 250 | // doing the update at this time causes problems (Mantis #7920 and #7915) |
251 | // TODO: move sending this update to a later time in the rootification of the client. | 251 | // TODO: move sending this update to a later time in the rootification of the client. |
252 | SendAgentGroupDataUpdate(sp.ControllingClient, false); | 252 | if(!sp.isNPC) |
253 | SendAgentGroupDataUpdate(sp.ControllingClient, false); | ||
253 | } | 254 | } |
254 | 255 | ||
255 | private void OnMakeChild(ScenePresence sp) | 256 | private void OnMakeChild(ScenePresence sp) |
@@ -1265,11 +1266,6 @@ namespace OpenSim.Groups | |||
1265 | { | 1266 | { |
1266 | if (m_debugEnabled) m_log.InfoFormat("[Groups]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); | 1267 | if (m_debugEnabled) m_log.InfoFormat("[Groups]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); |
1267 | 1268 | ||
1268 | // NPCs currently don't have a CAPs structure or event queues. There is a strong argument for conveying this information | ||
1269 | // to them anyway since it makes writing server-side bots a lot easier, but for now we don't do anything. | ||
1270 | if (remoteClient.SceneAgent.PresenceType == PresenceType.Npc) | ||
1271 | return; | ||
1272 | |||
1273 | // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff | 1269 | // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff |
1274 | 1270 | ||
1275 | UUID agentID = GetRequestingAgentID(remoteClient); | 1271 | UUID agentID = GetRequestingAgentID(remoteClient); |
@@ -1278,10 +1274,7 @@ namespace OpenSim.Groups | |||
1278 | 1274 | ||
1279 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); | 1275 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); |
1280 | IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); | 1276 | IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); |
1281 | if (eq != null) | 1277 | eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray); |
1282 | eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray); | ||
1283 | else | ||
1284 | remoteClient.SendGroupMembership(membershipArray); | ||
1285 | 1278 | ||
1286 | remoteClient.RefreshGroupMembership(); | 1279 | remoteClient.RefreshGroupMembership(); |
1287 | } | 1280 | } |
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs index 62f863b..d6bf552 100644 --- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs | |||
@@ -271,7 +271,8 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
271 | // There might be some problem with the thread we're generating this on but not | 271 | // There might be some problem with the thread we're generating this on but not |
272 | // doing the update at this time causes problems (Mantis #7920 and #7915) | 272 | // doing the update at this time causes problems (Mantis #7920 and #7915) |
273 | // TODO: move sending this update to a later time in the rootification of the client. | 273 | // TODO: move sending this update to a later time in the rootification of the client. |
274 | SendAgentGroupDataUpdate(sp.ControllingClient, false); | 274 | if(!sp.isNPC) |
275 | SendAgentGroupDataUpdate(sp.ControllingClient, false); | ||
275 | } | 276 | } |
276 | 277 | ||
277 | private void OnMakeChild(ScenePresence sp) | 278 | private void OnMakeChild(ScenePresence sp) |
@@ -1387,11 +1388,6 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
1387 | { | 1388 | { |
1388 | if (m_debugEnabled) m_log.InfoFormat("[GROUPS]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); | 1389 | if (m_debugEnabled) m_log.InfoFormat("[GROUPS]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); |
1389 | 1390 | ||
1390 | // NPCs currently don't have a CAPs structure or event queues. There is a strong argument for conveying this information | ||
1391 | // to them anyway since it makes writing server-side bots a lot easier, but for now we don't do anything. | ||
1392 | if (remoteClient.SceneAgent.PresenceType == PresenceType.Npc) | ||
1393 | return; | ||
1394 | |||
1395 | // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff | 1391 | // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff |
1396 | 1392 | ||
1397 | UUID agentID = GetRequestingAgentID(remoteClient); | 1393 | UUID agentID = GetRequestingAgentID(remoteClient); |
@@ -1400,10 +1396,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
1400 | 1396 | ||
1401 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); | 1397 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); |
1402 | IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); | 1398 | IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); |
1403 | if (eq != null) | 1399 | eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray); |
1404 | eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray); | ||
1405 | else | ||
1406 | remoteClient.SendGroupMembership(membershipArray); | ||
1407 | 1400 | ||
1408 | remoteClient.RefreshGroupMembership(); | 1401 | remoteClient.RefreshGroupMembership(); |
1409 | } | 1402 | } |