diff options
author | Diva Canto | 2010-01-15 15:11:58 -0800 |
---|---|---|
committer | Diva Canto | 2010-01-15 15:11:58 -0800 |
commit | f1c30784ac767bf5f62e81748984b76d85d71f6a (patch) | |
tree | 5aa635eadb534f30cd8aa2b9a1803f637e9b95a6 /OpenSim/Region/Framework/Scenes/ScenePresence.cs | |
parent | Added a UserAccountCache to the UserAccountServiceConnectors. Uses a CenomeCa... (diff) | |
download | opensim-SC-f1c30784ac767bf5f62e81748984b76d85d71f6a.zip opensim-SC-f1c30784ac767bf5f62e81748984b76d85d71f6a.tar.gz opensim-SC-f1c30784ac767bf5f62e81748984b76d85d71f6a.tar.bz2 opensim-SC-f1c30784ac767bf5f62e81748984b76d85d71f6a.tar.xz |
* General cleanup of Teleports, Crossings and Child agents. They are now in the new AgentTransferModule, in line with what MW started implementing back in May -- ITeleportModule. This has been renamed IAgentTransferModule, to be more generic.
* HGSceneCommunicationService has been deleted
* SceneCommunicationService will likely be deleted soon too
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 4ead60c..711f9d9 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1072,6 +1072,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1072 | /// </summary> | 1072 | /// </summary> |
1073 | public void CompleteMovement() | 1073 | public void CompleteMovement() |
1074 | { | 1074 | { |
1075 | //m_log.Debug("[SCENE PRESENCE]: CompleteMovement"); | ||
1076 | |||
1075 | Vector3 look = Velocity; | 1077 | Vector3 look = Velocity; |
1076 | if ((look.X == 0) && (look.Y == 0) && (look.Z == 0)) | 1078 | if ((look.X == 0) && (look.Y == 0) && (look.Z == 0)) |
1077 | { | 1079 | { |
@@ -1096,7 +1098,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1096 | if ((m_callbackURI != null) && !m_callbackURI.Equals("")) | 1098 | if ((m_callbackURI != null) && !m_callbackURI.Equals("")) |
1097 | { | 1099 | { |
1098 | m_log.DebugFormat("[SCENE PRESENCE]: Releasing agent in URI {0}", m_callbackURI); | 1100 | m_log.DebugFormat("[SCENE PRESENCE]: Releasing agent in URI {0}", m_callbackURI); |
1099 | Scene.SendReleaseAgent(m_originRegionID, UUID, m_callbackURI); | 1101 | Scene.SimulationService.ReleaseAgent(m_originRegionID, UUID, m_callbackURI); |
1100 | m_callbackURI = null; | 1102 | m_callbackURI = null; |
1101 | } | 1103 | } |
1102 | 1104 | ||
@@ -1104,6 +1106,17 @@ namespace OpenSim.Region.Framework.Scenes | |||
1104 | 1106 | ||
1105 | m_controllingClient.MoveAgentIntoRegion(m_regionInfo, AbsolutePosition, look); | 1107 | m_controllingClient.MoveAgentIntoRegion(m_regionInfo, AbsolutePosition, look); |
1106 | SendInitialData(); | 1108 | SendInitialData(); |
1109 | |||
1110 | // Create child agents in neighbouring regions | ||
1111 | if (!m_isChildAgent) | ||
1112 | { | ||
1113 | IAgentTransferModule m_agentTransfer = m_scene.RequestModuleInterface<IAgentTransferModule>(); | ||
1114 | if (m_agentTransfer != null) | ||
1115 | m_agentTransfer.EnableChildAgents(this); | ||
1116 | else | ||
1117 | m_log.DebugFormat("[SCENE PRESENCE]: Unable to create child agents in neighbours, because AgentTransferModule is not active"); | ||
1118 | } | ||
1119 | |||
1107 | } | 1120 | } |
1108 | 1121 | ||
1109 | /// <summary> | 1122 | /// <summary> |
@@ -2156,6 +2169,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2156 | { | 2169 | { |
2157 | if (m_isChildAgent) | 2170 | if (m_isChildAgent) |
2158 | { | 2171 | { |
2172 | // WHAT??? | ||
2159 | m_log.Debug("[SCENEPRESENCE]: AddNewMovement() called on child agent, making root agent!"); | 2173 | m_log.Debug("[SCENEPRESENCE]: AddNewMovement() called on child agent, making root agent!"); |
2160 | 2174 | ||
2161 | // we have to reset the user's child agent connections. | 2175 | // we have to reset the user's child agent connections. |
@@ -2179,7 +2193,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2179 | 2193 | ||
2180 | if (m_scene.SceneGridService != null) | 2194 | if (m_scene.SceneGridService != null) |
2181 | { | 2195 | { |
2182 | m_scene.SceneGridService.EnableNeighbourChildAgents(this, new List<RegionInfo>()); | 2196 | IAgentTransferModule m_agentTransfer = m_scene.RequestModuleInterface<IAgentTransferModule>(); |
2197 | if (m_agentTransfer != null) | ||
2198 | m_agentTransfer.EnableChildAgents(this); | ||
2183 | } | 2199 | } |
2184 | 2200 | ||
2185 | return; | 2201 | return; |
@@ -2476,11 +2492,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
2476 | m_controllingClient.SendAvatarData(new SendAvatarData(m_regionInfo.RegionHandle, m_firstname, m_lastname, m_grouptitle, m_uuid, LocalId, | 2492 | m_controllingClient.SendAvatarData(new SendAvatarData(m_regionInfo.RegionHandle, m_firstname, m_lastname, m_grouptitle, m_uuid, LocalId, |
2477 | pos, m_appearance.Texture.GetBytes(), m_parentID, m_bodyRot)); | 2493 | pos, m_appearance.Texture.GetBytes(), m_parentID, m_bodyRot)); |
2478 | 2494 | ||
2479 | if (!m_isChildAgent) | ||
2480 | { | ||
2481 | m_scene.InformClientOfNeighbours(this); | ||
2482 | } | ||
2483 | |||
2484 | SendInitialFullUpdateToAllClients(); | 2495 | SendInitialFullUpdateToAllClients(); |
2485 | SendAppearanceToAllOtherAgents(); | 2496 | SendAppearanceToAllOtherAgents(); |
2486 | } | 2497 | } |