“LlClearLinkMedia”的版本间的差异

来自人工智能助力教育知识百科
跳转至: 导航搜索
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名= Function:integer llClearLinkMedia(integer link,integer face); |参数=…”)
 
Ty讨论 | 贡献
第3行: 第3行:
 
{{函数详情
 
{{函数详情
 
|函数名= Function:integer llClearLinkMedia(integer link,integer face);
 
|函数名= Function:integer llClearLinkMedia(integer link,integer face);
|参数= 参数:integer link - Link number (0:unlinked,1:root prim,>1:child prims and seated avatars)or a LINK*flag
+
|参数= 参数:
 +
integer link - Link number (0:unlinked,1:root prim,>1:child prims and seated avatars)or a LINK*flag
 +
 
 
ineger face - face number
 
ineger face - face number
 
|返回值= 返回值:Returns a status (an integer)that is a STATUS_*flag which details the success/failure of the operation.
 
|返回值= 返回值:Returns a status (an integer)that is a STATUS_*flag which details the success/failure of the operation.

2020年4月13日 (一) 01:56的版本

Template:Needs Translation/

函数名
Function:integer llClearLinkMedia(integer link,integer face);
参数:

integer link - Link number (0:unlinked,1:root prim,>1:child prims and seated avatars)or a LINK*flag

ineger face - face number

返回值:Returns a status (an integer)that is a STATUS_*flag which details the success/failure of the operation.
注意事项
link needs to be either an actual link number or a link constants that equate to a single prim, such as LINK_ROOT and LINK_THIS.

LINK_SET, LINK_ALL_CHILDREN and LINK_ALL_OTHERS will not work. The function silently fails if its face value indicates a face that does not exist.

示例
//  when dropping this script into an object
//  it will remove all set media-on-a-prim
//  on all sides of every prim and then
//  the script will delete itself
 
 
 
 
integer GetPrimCount()
{
    if(llGetAttached())
        return llGetNumberOfPrims();
 
    return llGetObjectPrimCount(llGetKey());
}
 
publish_returned_status_flag(integer inputLink, integer inputFace, integer inputStatus)
{
    /* if (inputInteger == 0) */ string outputStatus = "STATUS_OK";
    if (inputStatus == 1000) outputStatus = "STATUS_MALFORMED_PARAMS";
    else if (inputStatus == 1001) outputStatus = "STATUS_TYPE_MISMATCH";
    else if (inputStatus == 1002) outputStatus = "STATUS_BOUNDS_ERROR";
    else if (inputStatus == 1003) outputStatus = "STATUS_NOT_FOUND";
    else if (inputStatus == 1004) outputStatus = "STATUS_NOT_SUPPORTED";
    else if (inputStatus == 1999) outputStatus = "STATUS_INTERNAL_ERROR";
    else if (inputStatus == 2001) outputStatus = "STATUS_WHITELIST_FAILED";
 
    // PUBLIC_CHANNEL has the integer value 0
    llSay(PUBLIC_CHANNEL, "llClearLinkMedia(link " + (string)inputLink
        + ", face " + (string)inputFace + ") = " + outputStatus + ";");
}
 
default
{
    state_entry()
    {
        integer numOfPrims = GetPrimCount();
        integer numOfSides;
 
        integer link;
        integer face;
 
        if (1 < numOfPrims)
            link = 1;
 
        do
        {
            numOfSides = llGetLinkNumberOfSides(link);
            face = 0;
            do
            {
                integer clearLinkMediaSuccessFlag = llClearLinkMedia(link, face);
                publish_returned_status_flag(link, face, clearLinkMediaSuccessFlag);
 
                ++face;
            }
            while (face < numOfSides);
 
            if (numOfPrims == 1)
                jump continue;
 
            ++link;
        }
        while (link <= numOfPrims);
 
        @continue;
 
        string thisScript = llGetScriptName();
        llRemoveInventory(thisScript);
    }
}
相关函数
llGetLinkNumber - Returns the link number of the prim the script is in.

llClearPrimMedia llSetLinkMedia llGetLinkMedia

相关事件