diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index d6aafaf..d8ef772 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -6090,6 +6090,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6090 | flags |= ScriptBaseClass.AGENT_AWAY; | 6090 | flags |= ScriptBaseClass.AGENT_AWAY; |
6091 | } | 6091 | } |
6092 | 6092 | ||
6093 | UUID busy = new UUID("efcf670c-2d18-8128-973a-034ebc806b67"); | ||
6094 | UUID[] anims = agent.Animator.GetAnimationArray(); | ||
6095 | if (Array.Exists<UUID>(anims, a => { return a == busy; })) | ||
6096 | { | ||
6097 | flags |= ScriptBaseClass.AGENT_BUSY; | ||
6098 | } | ||
6099 | |||
6093 | // seems to get unset, even if in mouselook, when avatar is sitting on a prim??? | 6100 | // seems to get unset, even if in mouselook, when avatar is sitting on a prim??? |
6094 | if ((agent.AgentControlFlags & (uint)AgentManager.ControlFlags.AGENT_CONTROL_MOUSELOOK) != 0) | 6101 | if ((agent.AgentControlFlags & (uint)AgentManager.ControlFlags.AGENT_CONTROL_MOUSELOOK) != 0) |
6095 | { | 6102 | { |
@@ -7778,10 +7785,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7778 | remaining = SetPrimParams((ScenePresence)part, rules); | 7785 | remaining = SetPrimParams((ScenePresence)part, rules); |
7779 | } | 7786 | } |
7780 | 7787 | ||
7781 | while((object)remaining != null && remaining.Length > 2) | 7788 | while ((object)remaining != null && remaining.Length > 2) |
7782 | { | 7789 | { |
7783 | linknumber = remaining.GetLSLIntegerItem(0); | 7790 | linknumber = remaining.GetLSLIntegerItem(0); |
7784 | rules = remaining.GetSublist(1,-1); | 7791 | rules = remaining.GetSublist(1, -1); |
7785 | parts.Clear(); | 7792 | parts.Clear(); |
7786 | prims = GetLinkParts(linknumber); | 7793 | prims = GetLinkParts(linknumber); |
7787 | avatars = GetLinkAvatars(linknumber); | 7794 | avatars = GetLinkAvatars(linknumber); |
@@ -7790,6 +7797,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7790 | foreach (ScenePresence p in avatars) | 7797 | foreach (ScenePresence p in avatars) |
7791 | parts.Add(p); | 7798 | parts.Add(p); |
7792 | 7799 | ||
7800 | remaining = null; | ||
7793 | foreach (object part in parts) | 7801 | foreach (object part in parts) |
7794 | { | 7802 | { |
7795 | if (part is SceneObjectPart) | 7803 | if (part is SceneObjectPart) |