diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 8545425..385a9cd 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -246,6 +246,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
246 | 246 | ||
247 | // For teleports and crossings callbacks | 247 | // For teleports and crossings callbacks |
248 | string m_callbackURI; | 248 | string m_callbackURI; |
249 | UUID m_originRegionID; | ||
250 | |||
249 | ulong m_rootRegionHandle; | 251 | ulong m_rootRegionHandle; |
250 | 252 | ||
251 | /// <value> | 253 | /// <value> |
@@ -890,7 +892,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
890 | presence.Animator.SendAnimPackToClient(ControllingClient); | 892 | presence.Animator.SendAnimPackToClient(ControllingClient); |
891 | } | 893 | } |
892 | 894 | ||
895 | m_log.Warn("BEFORE ON MAKE ROOT"); | ||
893 | m_scene.EventManager.TriggerOnMakeRootAgent(this); | 896 | m_scene.EventManager.TriggerOnMakeRootAgent(this); |
897 | m_log.Warn("AFTER ON MAKE ROOT"); | ||
894 | } | 898 | } |
895 | 899 | ||
896 | /// <summary> | 900 | /// <summary> |
@@ -1094,7 +1098,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1094 | if ((m_callbackURI != null) && !m_callbackURI.Equals("")) | 1098 | if ((m_callbackURI != null) && !m_callbackURI.Equals("")) |
1095 | { | 1099 | { |
1096 | 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); |
1097 | Scene.SendReleaseAgent(m_rootRegionHandle, UUID, m_callbackURI); | 1101 | Scene.SendReleaseAgent(m_originRegionID, UUID, m_callbackURI); |
1098 | m_callbackURI = null; | 1102 | m_callbackURI = null; |
1099 | } | 1103 | } |
1100 | 1104 | ||
@@ -1102,7 +1106,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
1102 | 1106 | ||
1103 | m_controllingClient.MoveAgentIntoRegion(m_regionInfo, AbsolutePosition, look); | 1107 | m_controllingClient.MoveAgentIntoRegion(m_regionInfo, AbsolutePosition, look); |
1104 | SendInitialData(); | 1108 | SendInitialData(); |
1105 | |||
1106 | } | 1109 | } |
1107 | 1110 | ||
1108 | /// <summary> | 1111 | /// <summary> |
@@ -2482,7 +2485,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2482 | 2485 | ||
2483 | SendInitialFullUpdateToAllClients(); | 2486 | SendInitialFullUpdateToAllClients(); |
2484 | SendAppearanceToAllOtherAgents(); | 2487 | SendAppearanceToAllOtherAgents(); |
2485 | } | 2488 | } |
2486 | 2489 | ||
2487 | /// <summary> | 2490 | /// <summary> |
2488 | /// Tell the client for this scene presence what items it should be wearing now | 2491 | /// Tell the client for this scene presence what items it should be wearing now |
@@ -2937,7 +2940,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2937 | public void CopyTo(AgentData cAgent) | 2940 | public void CopyTo(AgentData cAgent) |
2938 | { | 2941 | { |
2939 | cAgent.AgentID = UUID; | 2942 | cAgent.AgentID = UUID; |
2940 | cAgent.RegionHandle = m_rootRegionHandle; | 2943 | cAgent.RegionID = Scene.RegionInfo.RegionID; |
2941 | 2944 | ||
2942 | cAgent.Position = AbsolutePosition; | 2945 | cAgent.Position = AbsolutePosition; |
2943 | cAgent.Velocity = m_velocity; | 2946 | cAgent.Velocity = m_velocity; |
@@ -3036,7 +3039,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3036 | 3039 | ||
3037 | public void CopyFrom(AgentData cAgent) | 3040 | public void CopyFrom(AgentData cAgent) |
3038 | { | 3041 | { |
3039 | m_rootRegionHandle = cAgent.RegionHandle; | 3042 | m_originRegionID = cAgent.RegionID; |
3040 | 3043 | ||
3041 | m_callbackURI = cAgent.CallbackURI; | 3044 | m_callbackURI = cAgent.CallbackURI; |
3042 | 3045 | ||
@@ -3406,7 +3409,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3406 | } | 3409 | } |
3407 | } | 3410 | } |
3408 | 3411 | ||
3409 | public bool CrossAttachmentsIntoNewRegion(ulong regionHandle, bool silent) | 3412 | public bool CrossAttachmentsIntoNewRegion(GridRegion destination, bool silent) |
3410 | { | 3413 | { |
3411 | lock (m_attachments) | 3414 | lock (m_attachments) |
3412 | { | 3415 | { |
@@ -3427,8 +3430,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3427 | gobj.AbsolutePosition = gobj.RootPart.AttachedPos; | 3430 | gobj.AbsolutePosition = gobj.RootPart.AttachedPos; |
3428 | gobj.RootPart.IsAttachment = false; | 3431 | gobj.RootPart.IsAttachment = false; |
3429 | //gobj.RootPart.LastOwnerID = gobj.GetFromAssetID(); | 3432 | //gobj.RootPart.LastOwnerID = gobj.GetFromAssetID(); |
3430 | m_log.DebugFormat("[ATTACHMENT]: Sending attachment {0} to region {1}", gobj.UUID, regionHandle); | 3433 | m_log.DebugFormat("[ATTACHMENT]: Sending attachment {0} to region {1}", gobj.UUID, destination.RegionName); |
3431 | m_scene.CrossPrimGroupIntoNewRegion(regionHandle, gobj, silent); | 3434 | m_scene.CrossPrimGroupIntoNewRegion(destination, gobj, silent); |
3432 | } | 3435 | } |
3433 | } | 3436 | } |
3434 | m_attachments.Clear(); | 3437 | m_attachments.Clear(); |