User:Daemonika Nightfire/Scripts/DynamischesLinkset

From Second Life Wiki
< User:Daemonika Nightfire
Revision as of 09:01, 6 October 2021 by Daemonika Nightfire (talk | contribs) (Created page with "Text <source lang="lsl2"> default { state_entry() { llSetLinkColor(LINK_SET, <1,1,1>, ALL_SIDES); } touch_start(integer num) { intege...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Text

default
{
    state_entry()
    {
        llSetLinkColor(LINK_SET, <1,1,1>, ALL_SIDES);
    }
    
    touch_start(integer num)
    {
        integer link_set = llGetNumberOfPrims();
        integer i = 0;
        do
        {
            string link_name = llGetLinkName(i);
            
            if(link_name == "Prim_Name")
            {
                llSetLinkColor(i, <1,0,0>, ALL_SIDES);
            }
        }
        while(++i <= link_set);
    }
    
    on_rez(integer Dae)
    {
        llResetScript();
    }
}

Text

integer link_01;
integer link_02;
integer link_03;

GetLinks()
{
    integer link_set = llGetNumberOfPrims();
    integer i = 0;
    do
    {
        string link_name = llGetLinkName(i);
        
        if(link_name == "Prim_Name")
        {
            link_01 = i;
        }
        if(link_name == "Sculptie_Name")
        {
            link_02 = i;
        }
        if(link_name == "Mesh_Name")
        {
            link_03 = i;
        }
    }
    while(++i <= link_set);
}

default
{
    state_entry()
    {
        llSetLinkColor(LINK_SET, <1,1,1>, ALL_SIDES);
        GetLinks();
    }
    
    touch_start(integer num)
    {
        llSetLinkColor(link_01, <1,0,0>, ALL_SIDES);
        llSetLinkColor(link_02, <0,1,0>, ALL_SIDES);
        llSetLinkColor(link_03, <0,0,1>, ALL_SIDES);
    }
    
    changed(integer ch)
    {
        if(ch & CHANGED_LINK)
        {
            GetLinks();
        }
    }
    
    on_rez(integer Dae)
    {
        // llResetScript();
        // oder
        GetLinks();
    }
}