aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r--OpenSim/Region/Framework/Interfaces/IScriptModule.cs1
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs23
2 files changed, 23 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
index 7d7f904..51dcb7d 100644
--- a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
@@ -38,5 +38,6 @@ namespace OpenSim.Region.Framework.Interfaces
38 string GetXMLState(UUID itemID); 38 string GetXMLState(UUID itemID);
39 39
40 bool PostScriptEvent(UUID itemID, string name, Object[] args); 40 bool PostScriptEvent(UUID itemID, string name, Object[] args);
41 bool PostObjectEvent(UUID itemID, string name, Object[] args);
41 } 42 }
42} 43}
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 2c316a6..d06c583 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -223,6 +223,8 @@ namespace OpenSim.Region.Framework.Scenes
223 string m_callbackURI; 223 string m_callbackURI;
224 ulong m_rootRegionHandle; 224 ulong m_rootRegionHandle;
225 225
226 private IScriptModule[] m_scriptEngines;
227
226 #region Properties 228 #region Properties
227 229
228 /// <summary> 230 /// <summary>
@@ -585,6 +587,8 @@ namespace OpenSim.Region.Framework.Scenes
585 if (gm != null) 587 if (gm != null)
586 m_grouptitle = gm.GetGroupTitle(m_uuid); 588 m_grouptitle = gm.GetGroupTitle(m_uuid);
587 589
590 m_scriptEngines = m_scene.RequestModuleInterfaces<IScriptModule>();
591
588 AbsolutePosition = m_controllingClient.StartPos; 592 AbsolutePosition = m_controllingClient.StartPos;
589 AdjustKnownSeeds(); 593 AdjustKnownSeeds();
590 594
@@ -1943,7 +1947,24 @@ namespace OpenSim.Region.Framework.Scenes
1943 1947
1944 if (m_animations.TrySetDefaultAnimation(anim, m_controllingClient.NextAnimationSequenceNumber, UUID.Zero)) 1948 if (m_animations.TrySetDefaultAnimation(anim, m_controllingClient.NextAnimationSequenceNumber, UUID.Zero))
1945 { 1949 {
1946 SendAnimPack(); 1950 if (m_scriptEngines != null)
1951 {
1952 lock (m_attachments)
1953 {
1954 foreach (SceneObjectGroup grp in m_attachments)
1955 {
1956 // 16384 is CHANGED_ANIMATION
1957 //
1958 // Send this to all attachment root prims
1959 //
1960 foreach (IScriptModule m in m_scriptEngines)
1961 {
1962 m.PostObjectEvent(grp.RootPart.UUID, "changed", new Object[] {16384});
1963 }
1964 SendAnimPack();
1965 }
1966 }
1967 }
1947 } 1968 }
1948 } 1969 }
1949 1970