diff options
author | Melanie Thielker | 2009-04-11 16:51:27 +0000 |
---|---|---|
committer | Melanie Thielker | 2009-04-11 16:51:27 +0000 |
commit | 217b2d93ae77925e9ebbb0ef3e9b44d47e4234db (patch) | |
tree | dabfaa379dec57167e8a34a67f1089d2c2bd367f /OpenSim/Region/ScriptEngine | |
parent | * Minor MRM Cleanup (diff) | |
download | opensim-SC_OLD-217b2d93ae77925e9ebbb0ef3e9b44d47e4234db.zip opensim-SC_OLD-217b2d93ae77925e9ebbb0ef3e9b44d47e4234db.tar.gz opensim-SC_OLD-217b2d93ae77925e9ebbb0ef3e9b44d47e4234db.tar.bz2 opensim-SC_OLD-217b2d93ae77925e9ebbb0ef3e9b44d47e4234db.tar.xz |
Adding a script event, changed(CHANGED_ANIMATION)
This is sent to all root prims of all attachments of an avatar when the
animation state changes. llGetAnimation() can thenbe used to find the
new movement animation. This eliminates the need for fast timers in AOs
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
3 files changed, 19 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptEngine.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptEngine.cs index 34a7c7a..c3b52df 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptEngine.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptEngine.cs | |||
@@ -222,6 +222,15 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
222 | return PostScriptEvent(itemID, new EventParams(name, p, new DetectParams[0])); | 222 | return PostScriptEvent(itemID, new EventParams(name, p, new DetectParams[0])); |
223 | } | 223 | } |
224 | 224 | ||
225 | public bool PostObjectEvent(UUID itemID, string name, Object[] p) | ||
226 | { | ||
227 | SceneObjectPart part = m_Scene.GetSceneObjectPart(itemID); | ||
228 | if (part == null) | ||
229 | return false; | ||
230 | |||
231 | return PostObjectEvent(part.LocalId, new EventParams(name, p, new DetectParams[0])); | ||
232 | } | ||
233 | |||
225 | public DetectParams GetDetectParams(UUID itemID, int number) | 234 | public DetectParams GetDetectParams(UUID itemID, int number) |
226 | { | 235 | { |
227 | uint localID = m_ScriptManager.GetLocalID(itemID); | 236 | uint localID = m_ScriptManager.GetLocalID(itemID); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs index 5969a43..c9777ad 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs | |||
@@ -268,6 +268,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
268 | public const int CHANGED_REGION_RESTART = 256; | 268 | public const int CHANGED_REGION_RESTART = 256; |
269 | public const int CHANGED_REGION = 512; | 269 | public const int CHANGED_REGION = 512; |
270 | public const int CHANGED_TELEPORT = 1024; | 270 | public const int CHANGED_TELEPORT = 1024; |
271 | public const int CHANGED_ANIMATION = 16384; | ||
271 | public const int TYPE_INVALID = 0; | 272 | public const int TYPE_INVALID = 0; |
272 | public const int TYPE_INTEGER = 1; | 273 | public const int TYPE_INTEGER = 1; |
273 | public const int TYPE_FLOAT = 2; | 274 | public const int TYPE_FLOAT = 2; |
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index 037c494..f47e57d 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -938,6 +938,15 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
938 | return PostScriptEvent(itemID, new EventParams(name, p, new DetectParams[0])); | 938 | return PostScriptEvent(itemID, new EventParams(name, p, new DetectParams[0])); |
939 | } | 939 | } |
940 | 940 | ||
941 | public bool PostObjectEvent(UUID itemID, string name, Object[] p) | ||
942 | { | ||
943 | SceneObjectPart part = m_Scene.GetSceneObjectPart(itemID); | ||
944 | if (part == null) | ||
945 | return false; | ||
946 | |||
947 | return PostObjectEvent(part.LocalId, new EventParams(name, p, new DetectParams[0])); | ||
948 | } | ||
949 | |||
941 | public Assembly OnAssemblyResolve(object sender, | 950 | public Assembly OnAssemblyResolve(object sender, |
942 | ResolveEventArgs args) | 951 | ResolveEventArgs args) |
943 | { | 952 | { |