aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs27
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs5
3 files changed, 33 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 85837e4..ced81ad 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -7022,6 +7022,33 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7022 return m_host.ParentGroup.AttachmentPoint; 7022 return m_host.ParentGroup.AttachmentPoint;
7023 } 7023 }
7024 7024
7025 public LSL_List llGetAttachedList(string id)
7026 {
7027 m_host.AddScriptLPS(1);
7028
7029 ScenePresence av = World.GetScenePresence((UUID)id);
7030
7031 if (av == null || av.IsDeleted)
7032 return new LSL_List("NOT_FOUND");
7033
7034 if (av.IsChildAgent || av.IsInTransit)
7035 return new LSL_List("NOT_ON_REGION");
7036
7037 LSL_List AttachmentsList = new LSL_List();
7038 List<SceneObjectGroup> Attachments;
7039
7040 Attachments = av.GetAttachments();
7041
7042 foreach (SceneObjectGroup Attachment in Attachments)
7043 {
7044 if(Attachment.HasPrivateAttachmentPoint)
7045 continue;
7046 AttachmentsList.Add(new LSL_Key(Attachment.UUID.ToString()));
7047 }
7048
7049 return AttachmentsList;
7050 }
7051
7025 public virtual LSL_Integer llGetFreeMemory() 7052 public virtual LSL_Integer llGetFreeMemory()
7026 { 7053 {
7027 m_host.AddScriptLPS(1); 7054 m_host.AddScriptLPS(1);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
index 8b8638c..3d1482d 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
@@ -116,6 +116,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
116 LSL_String llGetAnimation(string id); 116 LSL_String llGetAnimation(string id);
117 LSL_List llGetAnimationList(string id); 117 LSL_List llGetAnimationList(string id);
118 LSL_Integer llGetAttached(); 118 LSL_Integer llGetAttached();
119 LSL_List llGetAttachedList(string id);
119 LSL_List llGetBoundingBox(string obj); 120 LSL_List llGetBoundingBox(string obj);
120 LSL_Vector llGetCameraPos(); 121 LSL_Vector llGetCameraPos();
121 LSL_Rotation llGetCameraRot(); 122 LSL_Rotation llGetCameraRot();
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
index cea66d2..2769712 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
@@ -426,6 +426,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
426 return m_LSL_Functions.llGetAttached(); 426 return m_LSL_Functions.llGetAttached();
427 } 427 }
428 428
429 public LSL_List llGetAttachedList(string id)
430 {
431 return m_LSL_Functions.llGetAttachedList(id);
432 }
433
429 public LSL_List llGetBoundingBox(string obj) 434 public LSL_List llGetBoundingBox(string obj)
430 { 435 {
431 return m_LSL_Functions.llGetBoundingBox(obj); 436 return m_LSL_Functions.llGetBoundingBox(obj);