Browse Source

fix llGetLinkKey to support LINK_* constants

UbitUmarov 3 years ago
parent
commit
3d5d4333dd
1 changed files with 9 additions and 0 deletions
  1. 9 0
      OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs

+ 9 - 0
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs

@@ -4704,6 +4704,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
         public LSL_Key llGetLinkKey(int linknum)
         {
             m_host.AddScriptLPS(1);
+            if(linknum < 0)
+            {
+                if (linknum == ScriptBaseClass.LINK_ROOT)
+                    return m_host.ParentGroup.RootPart.UUID.ToString();
+                if (linknum == ScriptBaseClass.LINK_THIS)
+                    return m_host.UUID.ToString();
+                return ScriptBaseClass.NULL_KEY;
+            }
+
             SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum);
             if (part != null)
             {