Aurora.ScriptEngine.AuroraDotNetEngine.APIs.LSL_Api.GetLinkParts C# (CSharp) Method

GetLinkParts() public method

public GetLinkParts ( int linkType ) : List
linkType int
return List
        public List<ISceneChildEntity> GetLinkParts(int linkType)
        {
            List<ISceneChildEntity> ret = new List<ISceneChildEntity> { m_host };

            if (linkType == ScriptBaseClass.LINK_SET)
            {
                if (m_host.ParentEntity != null)
                    return new List<ISceneChildEntity>(m_host.ParentEntity.ChildrenEntities());
                return ret;
            }

            if (linkType == ScriptBaseClass.LINK_ROOT)
            {
                if (m_host.ParentEntity != null)
                {
                    ret = new List<ISceneChildEntity> { m_host.ParentEntity.RootChild };
                    return ret;
                }
                return ret;
            }

            if (linkType == ScriptBaseClass.LINK_ALL_OTHERS)
            {
                if (m_host.ParentEntity == null)
                    return new List<ISceneChildEntity>();
                ret = new List<ISceneChildEntity>(m_host.ParentEntity.ChildrenEntities());
                if (ret.Contains(m_host))
                    ret.Remove(m_host);
                return ret;
            }

            if (linkType == ScriptBaseClass.LINK_ALL_CHILDREN)
            {
                if (m_host.ParentEntity == null)
                    return new List<ISceneChildEntity>();
                ret = new List<ISceneChildEntity>(m_host.ParentEntity.ChildrenEntities());
                if (ret.Contains(m_host.ParentEntity.RootChild))
                    ret.Remove(m_host.ParentEntity.RootChild);
                return ret;
            }

            if (linkType == ScriptBaseClass.LINK_THIS)
            {
                return ret;
            }

            if (linkType < 0 || m_host.ParentEntity == null)
                return new List<ISceneChildEntity>();
            IEntity target = m_host.ParentEntity.GetLinkNumPart(linkType);
            if (target is ISceneChildEntity)
            {
                ret = new List<ISceneChildEntity> { target as ISceneChildEntity };
            }
            //No allowing scene presences to be found here
            return ret;
        }
LSL_Api